私は次のことを試しています:
scala> " in gral. case".replaceAll("""(?imx) \bgral\.\b """, "(*)")
res14: java.lang.String = " in gral. case"
問題は 2 番目の \b のようです。
scala> " in gral. case".replaceAll("""(?imx) \bgral\. """, "(*)")
res16: java.lang.String = " in (*) case"
できます
問題は「。」だと思います。それ自体が単語区切りなので、ドットではない単語区切りをどのように示すことができますか??
- 編集
私が達成しようとしているのは、このように、ドットの接尾辞が付いている場合と付いていない場合があるいくつかの略語を削除することです (それらは通りの名前です)。
"xxx av av. avenue" -> xxx
"yyy dr dr. doctor zzz" -> yyy zzz
だから私は次のようなもので試していました
"xxx".replaceAll("""(?imx) \b(?:av\.|av|avenue|dr\.|dr|doctor)\b""", "")
しかし、私は次のようになります
scala> "xxx av av. avenue".replaceAll("""(?imx) \b(?:av\.|av|avenue|dr\.|dr|doctor)\b""", "")
res30: java.lang.String = "xxx . "
scala> "yyy dr dr. doctor zzz".replaceAll("""(?imx) \b(?:av\.|av|avenue|dr\.|dr|doctor)\b""", "")
res31: java.lang.String = yyy . zzz