[解決済み] 句読点に関する正規表現
2022-02-02 05:44:57
質問事項
ということで、私は全く初めて
正規表現
を使おうとしているのですが、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を返すまで。
関連
-
[解決済み】javaで指定されたファイルが見つからない
-
[解決済み】文字列中の � を置換する方法
-
[解決済み] 正規表現で変数を使うには?
-
[解決済み] 単語を含まない行にマッチする正規表現
-
[解決済み] 正規表現における非捕捉グループとは何ですか?
-
[解決済み] 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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Android Studio クラス org.codehaus.groovy.runtime.InvokerHelper を初期化できませんでした。
-
[解決済み】このコンパイルユニットは名前付きモジュールに関連しているため、名前付きパッケージeclipseを宣言する必要があります。
-
[解決済み】代入の左手は必ず変数 CharAt
-
[解決済み】"比較メソッドはその一般契約に違反する!"
-
[解決済み】"|="の意味は何ですか?(パイプ等号演算子)
-
[解決済み】Java JDK - doubleからintへの非可逆変換の可能性
-
[解決済み】Eclipseで「公開型 <<classname>> は独自のファイルで定義する必要があります」エラー【重複あり
-
[解決済み】Javaを包含するクラスではないのか?
-
[解決済み] SQLエラー。0, SQLState: 08S01 通信リンクの失敗 [重複]。
-
[解決済み] "java.nio.charset.MalformedInputException" を避けるために、すべての包括的なCharset。入力の長さ= 1"?