Scala Regular Expressions

Education is not limited to just classrooms. It can be gained anytime, anywhere... - Ravi Ranjan (M.Tech-NIT)

Scala Regular Expressions

Regular expressions are patterns that permit you to “match” various string values in a variety of ways. Scala uses import scala.util.matching.Regex to implement regular expression concept.

A pattern is simply one or more characters that represent a set of possible match characters. In regular expression matching, you use a character or set of characters to represent the strings you want to match in the text. A regular expression is a way of describing a set of strings using common properties for example, strings that start with an “A” and end with an exclamation mark.



1. Change the string representation of a regular expression into a Pattern object;

2. Create a Matcher object from the object which is created in the first step that applies to a particular string;

3. Apply the various methods of the Matcher object to the particular string.


These steps can be expressed in Scala as follows:

import java.util.regex.{Pattern,Matcher}

. . . . . . . . . . . . . . . . . . . .

val i = Pattern.compile("regularExpression")

val j = i.matcher(String)

var foundMatch = j.find()


import java.util.regex._

object HelloWorld {

def main(args: Array[String])  {

val p = Pattern.compile("i")

val m = p.matcher("intellipaat")

var found = false

while (m.find()) {

print("I found the text ""+

print("" starting at index " + m.start()+"

found = true


if (!found)

println("No match found.")




I found the text “i” starting at index 0

I found the text “i” starting at index 6