[解決済み] 句読点に関する正規表現
2022-03-01 05:55:19
質問
ということで、私は全く初めて
正規表現
を使おうとしているのですが、Javaの
java.util.regex
入力文字列の中の句読点を見つけるために (1) !, ?, ., ... はすべて有効な句読点であり、(2) "<" と ">" は何か特別な意味があり、句読点として数えられないことを除いて、どんな句読点が得られるかを前もって知っておくことはありません。
プログラム自体が擬似的にランダムにフレーズを構築するので、ランダムなプロセスを経る前に文末の句読点を取り除きたいのです。
単語全体と任意の句読点をマッチングさせることができますが、マッチャーはその単語のインデックスを与えるだけです。つまり
Pattern p = Pattern.compile("(.*\\!)*?");
Matcher m = p.matcher([some input string]);
を含むすべての単語を取得します。
"!"
を末尾に付けます。例えば
String inputString = "It is a warm Summer day!";
Pattern p = Pattern.compile("(.*\\!)*?");
Matcher m = p.matcher(inputString);
String match = inputString.substring(m.start(), m.end());
は --> String match ~ "day!".に該当します。
しかし、私は
Matcher
のみで構成されます。
"!"
というように、分割すればいいんです。
ケースを作ることができるかもしれませんし
String.substring(...)
のような句読点が出るかもしれませんが、正規表現の使い方で何か間違いがあればと思います。
どのように解決するのですか?
私なら、次のような文字クラスの正規表現を試します。
"[.!?\\-]"
の中に、マッチさせたい文字を追加してください。
[]
s. 正規表現パーサーが特別な意味を持つ可能性のある文字をエスケープすることに注意してください。
次に、マッチしたものを繰り返し処理するために
Matcher.find()
がfalseを返すまで。
関連
-
[解決済み] 正規表現で変数を使うには?
-
[解決済み] この配列の中の数字を入れ替えるには、何が足りないのでしょうか?ジャバ
-
[解決済み] 1行目2列目でBEGIN_ARRAYを期待したが、BEGIN_OBJECTだった。
-
[解決済み] 単語を含まない行にマッチする正規表現
-
[解決済み] 正規表現における非捕捉グループとは何ですか?
-
[解決済み] JavaScriptの正規表現でマッチしたグループにアクセスするにはどうすればよいですか?
-
[解決済み] 有効な正規表現を検出するための正規表現はありますか?
-
[解決済み] 正規表現における「lazy」「greedy」の意味とは?
-
[解決済み] jQueryセレクタの正規表現
-
[解決済み] 貪欲 vs. 渋い vs. 所有格の修飾語
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] maven. -source 1.5ではラムダ式がサポートされていません。
-
[解決済み] Firebase クラスにシリアライズするプロパティが見つからない
-
[解決済み] この配列の中の数字を入れ替えるには、何が足りないのでしょうか?ジャバ
-
[解決済み] javacが「using unchecked or unsafe operations」という警告を出す原因は何ですか?
-
[解決済み] javax.naming.NameNotFoundException
-
[解決済み] javax.mail.MessagingException: SMTPホストに接続できませんでしたか?
-
[解決済み] Apache Camelのログに簡単なテキストを記録する
-
[解決済み] Mavenです。JARは空になります - 含有するためにマークされたコンテンツがありません
-
[解決済み] アクティビティに割り当てられない
-
[解決済み] Javaでdoubleをfloatに変換する