Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私は正規表現にかなり慣れていません。次の方法がわからない:
「:p_id」を特定の値に置き換えます。
たとえば、単に「:p_id1」を値に置き換えたい場合、「:p_id10」も同じ値に置き換えられますが、これは私が望むものではありません。
また、":p_id" の前後に句読点を入れることもできます (例: "=:p_id1)"
何かアドバイス?
\b(単語境界) 演算子を使用する
\b
myString.replaceAll(":p_id1\\b","some replacement");
参照Pattern>境界マッチャー
Pattern
パターンの最後で否定先読みを使用できます。
例えば:
Pattern pattern = Pattern.compile(":p_id\\d(?!\\d)"); String example = ":p_id1 :p_id10"; Matcher matcher = pattern.matcher(example); while (matcher.find()) System.out.println(matcher.group());
出力:
:p_id1