C#とJavaで正規表現を書くための構文の違いはありますか?
どうすればC#で次のコードと同等にすることができますか
Pattern.matcher(word).matches();
パターンのどこに私が持っている"\\.|[!?]+"
Pattern
C#にはクラスはありません。
C#のレプリカであるPatternの代わりにRejexを使用しています。しかし、Rejexでメソッドmatcher()matches()のレプリカを取得できません。
ほとんどすべての正規表現の実装に違いがあることを考えると、.NET と Java の正規表現は異なると思います。ドキュメントを確認できます (.NET の場合はここにあります)。
より良いソースは、さまざまな正規表現エンジン (Java と .NET を含む) の違いの詳細をカバーしている Friedl のMastering Regular Expressionsです。
.NET で正規表現を照合するには、Regex
クラスを使用します。例えば。:
Match results = myRegex.Match(myString);
ここで、 のインスタンスにMatch
は、単一 (上記のように) または複数 ( method を使用Matches
) の一致とキャプチャのすべての詳細が含まれます。またはもちろん、そのプロパティをSuccess
false にします。
JavaScript 正規表現エディタを Rejexrejex
するという意味であれば、それは JavaSript 正規表現エンジンを使用することになります。これがまた違う。