タグ付けされた質問 「regex」

正規表現は、文字列内のパターンに一致する宣言型言語を提供します。これらは、文字列の検証、解析、および変換に一般的に使用されます。正規表現は完全に標準化されていないため、このタグの付いたすべての質問には、適切なプログラミング言語またはツールを指定するタグも含める必要があります。注:HTML、JSONなどを要求すると、正規表現は否定的な反応を示す傾向があります。パーサーがある場合は、代わりにそれを使用してください。


5
.NET正規表現の「グループ」と「キャプチャ」の違いは何ですか?
.NETの正規表現言語に関して、 "グループ"と "キャプチャ"の違いは少し曖昧です。次のC#コードを考えます。 MatchCollection matches = Regex.Matches("{Q}", @"^\{([A-Z])\}$"); これにより、文字 'Q'が1回キャプチャされることが期待されますが、返されたのプロパティを出力するとMatchCollection、次のようになります。 matches.Count: 1 matches[0].Value: {Q} matches[0].Captures.Count: 1 matches[0].Captures[0].Value: {Q} matches[0].Groups.Count: 2 matches[0].Groups[0].Value: {Q} matches[0].Groups[0].Captures.Count: 1 matches[0].Groups[0].Captures[0].Value: {Q} matches[0].Groups[1].Value: Q matches[0].Groups[1].Captures.Count: 1 matches[0].Groups[1].Captures[0].Value: Q ここで正確に何が起こっているのですか?試合全体の攻略もあると聞きましたが、グループはどのようにして参加しますか?そして、なぜmatches[0].Captures「Q」の文字のキャプチャが含まれていないのですか?
161 c#  .net  regex 

15
PHPのpreg_match_all()のように、JavaScriptで複数の出現箇所を正規表現と一致させるにはどうすればよいですか?
&またはで区切られたキー=値のペアで構成されるURLエンコードされた文字列を解析しようとしています&。 以下は、最初の出現にのみ一致し、キーと値を別々の結果要素に分解します。 var result = mystring.match(/(?:&|&)?([^=]+)=([^&]+)/) 文字列「1111342 = Adam%20Franco&348572 = Bob%20Jones」の結果は次のようになります。 ['1111342', 'Adam%20Franco'] グローバルフラグ 'g'を使用すると、すべての出現に一致しますが、完全に一致した部分文字列のみが返され、分離されたキーと値は返されません。 var result = mystring.match(/(?:&|&)?([^=]+)=([^&]+)/g) 文字列「1111342 = Adam%20Franco&348572 = Bob%20Jones」の結果は次のようになります。 ['1111342=Adam%20Franco', '&348572=Bob%20Jones'] 文字列を分割し&て各キー/値ペアを個別に分割することもできますが、JavaScriptの正規表現サポートを使用し/(?:&|&)?([^=]+)=([^&]+)/て、PHPのpreg_match_all()関数と同様に、パターンの複数の出現に一致する方法はありますか? 私は次のようにサブマッチを分けて結果を得るいくつかの方法を目指しています: [['1111342', '348572'], ['Adam%20Franco', 'Bob%20Jones']] または [['1111342', 'Adam%20Franco'], ['348572', 'Bob%20Jones']]
160 javascript  regex 

6
正規表現一致の配列を作成する
Javaでは、すべての正規表現の一致を配列に返そうとしていますが、パターンが何かと一致するかどうか(ブール値)しか確認できないようです。 正規表現一致を使用して、指定された文字列の正規表現に一致するすべての文字列の配列を形成するにはどうすればよいですか?
160 java  regex 

7
文字列を正規表現に補間する
Rubyの正規表現に文字列の値を代入する必要があります。これを行う簡単な方法はありますか?例えば: foo = "0.0.0.0" goo = "here is some other stuff 0.0.0.0" if goo =~ /value of foo here dynamically/ puts "success!" end
160 ruby  regex 

5
正規表現を使用してbashで検索して置換する
私はこの例を見ました: hello=ho02123ware38384you443d34o3434ingtod38384day echo ${hello//[0-9]/} これはこの構文に従います: ${variable//pattern/replacement} 残念ながら、patternフィールドは完全な正規表現構文をサポートしていないようです(たとえば、.またはを使用\sすると、リテラル文字と一致しようとします)。 完全な正規表現構文を使用して文字列を検索/置換するにはどうすればよいですか?
160 regex  bash 

6
正規表現を使用して文字を大文字に変換する(EditPad Pro)
すべての一致(つまり1文字)を大文字に置き換えることができることを期待して、正規表現を作成しました。私はEditPad Proを使用しています(ただし、1回だけ実行する必要があるため、無料で試すことができる限り、これを可能にする他のツールを使用してもかまいません)。 背景:大文字と小文字を区別するアプリケーションで使用される非常に長いテキストファイルがあり、一部の単語が大文字ではなく小文字で始まるため、アプリケーションがクラッシュします。これを手作業で行うには非常に時間がかかります。また、(悪)小文字のcharの発生は非常に特殊であるため、正規表現なしで行うのはかなり複雑になります。 select正規表現を作成しましたが、これを後方参照で使用できます($ 1は問題なく動作します)が、大文字のcharで置き換えることはできません。\ u $ 1のようなものが機能すると思いましたが、EditPad Proでは機能しません。 これを行うことができる無料のツールがない場合は、代わりにC#でそれを行うこともできますが、コンパイラの近くではなく、少し急いでいるので、最初にExpress Editionをダウンロードする必要があります。 ...そのような機能をサポートするツールを見つけることが望ましいでしょう! ありがとうございました!
159 regex 

5
改行に一致-\ nまたは\ r \ n?
この回答を書いている間、s-flag(dotall-ドットは改行に一致します)を使用する代わりに、改行のみに一致する必要がありました。 正規表現のテストに通常使用されるサイトは、\nまたはに一致させようとすると、動作が異なり\r\nます。 私は気づきました Regex101は改行のみに一致します\n (例 -削除\rして一致) RegExrはオン とオンのどちら\n でも改行に一致\r\nせず、m-flagと\s (例)を除いて、改行に一致するものを見つけることができません Debuggexの動作はさらに異なります 。この例では\r\n、にのみ一致しますが、 ここで\nは、同じフラグとエンジンが指定されているにのみ一致します 私はm-flag(複数行-行^の先頭と$末尾を一致させる)を完全に認識していますが、これがオプションにならない場合があります。\sタブやスペースにも一致するため、と同じです。 Unicodeの改行文字(\u0085)を使用するという私の考えはうまくいかなかったので、 改行の一致を(できれば使用言語に関係なく)正規表現に統合するフェイルセーフな方法はありますか? 上記のサイトの動作が異なるのはなぜですか(特にDebuggex、1回だけ\nと1 回だけ一致\r\n)。

12
CamelCaseをJavaで判読可能な名前に変換するにはどうすればよいですか?
CamelCaseを人間が読める名前に変換するメソッドを書きたいのですが。 ここにテストケースがあります: public void testSplitCamelCase() { assertEquals("lowercase", splitCamelCase("lowercase")); assertEquals("Class", splitCamelCase("Class")); assertEquals("My Class", splitCamelCase("MyClass")); assertEquals("HTML", splitCamelCase("HTML")); assertEquals("PDF Loader", splitCamelCase("PDFLoader")); assertEquals("A String", splitCamelCase("AString")); assertEquals("Simple XML Parser", splitCamelCase("SimpleXMLParser")); assertEquals("GL 11 Version", splitCamelCase("GL11Version")); }



3
RegExは、文字列に少なくとも1つの小文字、大文字、数字、記号が含まれていることを確認します
特定の文字列に次の各カテゴリの少なくとも1つの文字が含まれていることを確認するための正規表現とは何ですか。 小文字 大文字 桁 シンボル 私は、すなわち、個々のセットのためのパターンを知って[a-z]、[A-Z]、\dと_|[^\w](私は彼らが修正だ、私はしませんでした?)。 しかし、文字列がこれらすべてを任意の順序で確実に含むようにするには、それらをどのように組み合わせますか?
156 regex 




弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.