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

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


8
awkを使用して一致した正規表現パターンを印刷する方法は?
を使用awkして、ファイル内で正規表現パターンに一致する単語を見つける必要があります。 私は唯一のパターンと一致する単語を印刷したいです。 したがって、行にある場合、私は: xxx yyy zzz そしてパターン: /yyy/ 取得したいだけです: yyy 編集:私は次のようなものを書くことができたクルミのおかげで: awk '{ for(i=1; i<=NF; i++) { tmp=match($i, /[0-9]..?.?[^A-Za-z0-9]/) if(tmp) { print $i } } }' $1 そして、これは私が必要としたものです:)どうもありがとう!
109 regex  awk 

2
正規表現ではない演算子
正規表現にNOT演算子はありますか?その文字列のように:"(2001) (asdf) (dasd1123_asd 21.01.2011 zqge)(dzqge) name (20019)" 年であるものを除くすべてを削除したい\([0-9a-zA-z _\.\-:]*\):(2001)。 したがって、正規表現が返す必要があるのは次のとおり(2001) nameです。 注:のようなものが\((?![\d]){4}[0-9a-zA-z _\.\-:]*\)機能しません((20019)どういうわけか一致します...)
109 java  regex  string 


12
正規表現を使用してJavaScriptのHTMLタグを削除する
JavaScriptの文字列からすべてのhtmlタグを削除しようとしています。ここに私が持っているものがあります...なぜそれが機能しないのか分かりません...何か私が間違っていることを知っていますか? <script type="text/javascript"> var regex = "/<(.|\n)*?>/"; var body = "<p>test</p>"; var result = body.replace(regex, ""); alert(result); </script> どうもありがとう!
108 javascript  regex 


6
一致する正規表現パターン、次の場合を除く... /間を除く
-編集 -現在の回答にはいくつかの便利なアイデアがありますが、100%理解して再利用できるより完全なものを求めています。それが私が賞金を設定した理由です。また、どこでも機能するアイデアは、次のような標準的な構文よりも私にとって優れています\K この質問は、一部の状況s1 s2 s3を除いて、パターンをどのように照合できるかについてです。私は自分の意味を示すために具体的な例を示しますが、他の状況で再利用できるように、100%理解できる一般的な回答を好みます。 例 を使用して5桁で一致させたい\b\d{5}\bが、3つの状況では一致させたくないs1 s2 s3: s1:この文のようなピリオドで終わる行にはありません。 s2:括弧内のどこにもありません。 s3:で始まりif(、終わるブロック内ではない//endif 特にC#の先読みまたは\KPHP で、先読みと後読みを使用してs1 s2 s3のいずれかを解決する方法を知っています。 例えば s1 (?m)(?!\d+.*?\.$)\d+ s3とC#のlookbehind (?<!if\(\D*(?=\d+.*?//endif))\b\d+\b PHP \ Kを使用したs3 (?:(?:if\(.*?//endif)\D*)*\K\d+ しかし、条件の混合は私の頭を爆発させます。さらに悪いことに、別のときに他の条件s4 s5を追加する必要があるかもしれません。 朗報ですが、PHP、C#、Pythonなどの最も一般的な言語を使用してファイルを処理しても、隣人の洗濯機を使用してもかまいません。:)私はPythonとJavaの初心者ですが、解決策があるかどうかを知りたいと思っています。 だから私は誰かが柔軟なレシピを考えるかどうかを確かめるためにここに来ました。 ヒントは大丈夫です。完全なコードを提供する必要はありません。:) ありがとうございました。
108 regex 

10
正規表現でエスケープする必要があるすべての特殊文字のリスト
メッセージテンプレートとユーザーが送信しようとしているメッセージを照合するアプリケーションを作成しようとしています。メッセージの照合にJava正規表現を使用しています。テンプレート/メッセージには特殊文字が含まれている場合があります。 正規表現を最大限に活用して一致させるためにエスケープする必要がある特殊文字の完全なリストを取得するにはどうすればよいですか? Java正規表現ですべての特殊文字をエスケープするための普遍的な解決策はありますか?
108 java  regex 

10
C ++:どの正規表現ライブラリを使用すればよいですか?[閉まっている]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 5年前休業。 この質問を改善する 私は、Linuxベースのシステムで実行される商用(オープンソースではない)C ++プロジェクトに取り組んでいます。C ++コード内でいくつかの正規表現を実行する必要があります。(私は知っています:私は今2つの問題を抱えています。) 質問:C / C ++から正規表現を定期的に行う人は、どのライブラリを検討することをお勧めしますか?簡単な検索で、次のことに注意が向けられました。 1)Boost.Regex(Boostソフトウェアライセンスを読む必要がありますが、この質問はソフトウェアライセンスに関するものではありません) 2)C(C ++ではない)POSIX正規表現(#include <regex.h>、regcomp、regexecなど) 3)http://freshmeat.net/projects/cpp_regex/ (これについては何も知りません。GPLのようですので、このプロジェクトでは使用できません)
107 c++  regex  linux 

12
正規表現を使用して文字列を一致させるのではなく生成する
パフォーマンステスト用にデータのロードを生成するのに役立つJavaユーティリティを書いています。Stringsの正規表現を指定して、これに一致するものをジェネレーターが出力できるようにすることは、本当に素晴らしいことです。これを行うために使用できる焼きたての物はありますか?それとも私をそこまでのほとんどの道に導いてくれる図書館はありますか? ありがとう
107 java  regex 

6
express.js-単一行の複数のルート用の単一のルーティングハンドラー
これを単一の関数呼び出しで行う方法はありますか? var todo = function (req, res){}; app.get("/", todo); app.get("/blabla", todo); app.get("/blablablabla", todo); 何かのようなもの: app.get("/", "/blabla", "/blablablabla", todo ); 私はこれが構文の混乱であることを知っていますが、私が達成したいことのアイデアを与えるために、ルートの配列は素晴らしいでしょう! 誰でもこれを行う方法を知っていますか?

6
正規表現のサブジェクト文字列の空白を無視する方法は?
正規表現パターンを使用して一致を検索するときに、ターゲット文字列の空白を無視する簡単な方法はありますか?たとえば、「猫」を検索する場合は、「c ats」または「ca ts」と一致させます。一致を強調表示するために一致の開始インデックスと終了インデックス(空白を含む)を見つける必要があり、フォーマットの目的で空白が必要なため、事前に空白を取り除くことはできません。
107 regex  whitespace 

15
Java文字列のトークンのセットを置き換える方法は?
次のテンプレート文字列があります:"Hello [Name] Please find attached [Invoice Number] which is due on [Due Date]"。 名前、請求書番号、期限の文字列変数もあります-テンプレート内のトークンを変数に置き換える最良の方法は何ですか? (変数にトークンが含まれている場合は、置き換えないでください)。 編集 @laginimainebと@ alan-mooreのおかげで、これが私の解決策です: public static String replaceTokens(String text, Map<String, String> replacements) { Pattern pattern = Pattern.compile("\\[(.+?)\\]"); Matcher matcher = pattern.matcher(text); StringBuffer buffer = new StringBuffer(); while (matcher.find()) { String replacement = replacements.get(matcher.group(1)); if (replacement != …
106 java  regex  templates 

9
ホワイトスペースマッチング正規表現-Java
正規表現用のJava APIは、\s空白に一致すると述べています。したがって、正規表現\\s\\sは2つのスペースに一致する必要があります。 Pattern whitespace = Pattern.compile("\\s\\s"); matcher = whitespace.matcher(modLine); while (matcher.find()) matcher.replaceAll(" "); この目的は、2つの連続する空白のすべてのインスタンスを1つのスペースに置き換えることです。ただし、これは実際には機能しません。 正規表現または「ホワイトスペース」という用語について重大な誤解がありますか?
106 java  regex  whitespace 


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