val rPat
="""\b(R\d{4})\b""".
r.
unanchored val pPat
="""\b(P\.\d{2}\.\d{2}\.\d{2})\b""".
r.
unanchored
val matcher
= (s
:String
) => s
match {case pPat
(el
)=> println
(el
) // print the P.25.01.25 case rPat
(el
)=>println
(el
) // print R0100 case _ => println
("no match") }
val pSt
=" P.25.01.21 - Hello whats going on?" matcher(pSt)
val pSt2
_bad
=" CP.2334565.01124.212 - Hello whats going on?" matcher(pSt2_bad)
val rSt
= "R0010 test test 3,870" matcher(rSt)
val rSt2
_bad
= "CSR00105 test test 3,870" matcher(rSt2_bad)
}
b2JqZWN0IE1haW4gZXh0ZW5kcyBBcHAgewogICAgdmFsIHJQYXQ9IiIiXGIoUlxkezR9KVxiIiIiLnIudW5hbmNob3JlZAogICAgdmFsIHBQYXQ9IiIiXGIoUFwuXGR7Mn1cLlxkezJ9XC5cZHsyfSlcYiIiIi5yLnVuYW5jaG9yZWQKCgl2YWwgbWF0Y2hlcj0gKHM6U3RyaW5nKSA9PiBzIG1hdGNoIHtjYXNlIHBQYXQoZWwpPT4gcHJpbnRsbihlbCkgLy8gcHJpbnQgdGhlIFAuMjUuMDEuMjUKCQljYXNlIHJQYXQoZWwpPT5wcmludGxuKGVsKSAvLyBwcmludCBSMDEwMCAKCQljYXNlIF8gPT4gcHJpbnRsbigibm8gbWF0Y2giKQoJfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgl2YWwgcFN0PSIgUC4yNS4wMS4yMSAtIEhlbGxvIHdoYXRzIGdvaW5nIG9uPyIKICAJbWF0Y2hlcihwU3QpCiAgCXZhbCBwU3QyX2JhZD0iIENQLjIzMzQ1NjUuMDExMjQuMjEyIC0gSGVsbG8gd2hhdHMgZ29pbmcgb24/IgogIAltYXRjaGVyKHBTdDJfYmFkKQogIAl2YWwgclN0PSAiUjAwMTAgIHRlc3QgdGVzdCAzLDg3MCIgCiAgCW1hdGNoZXIoclN0KQogIAl2YWwgclN0Ml9iYWQgPSAiQ1NSMDAxMDUgIHRlc3QgdGVzdCAzLDg3MCIgCiAgCW1hdGNoZXIoclN0Ml9iYWQpCn0=