-1

角かっこの間からテキストを抽出したいのですが、使用して[(.*?)]いますが、完全には機能していません。

4月17日13:01:3410.11.26.832012-04-17 00:30:52.222 -0700 ABCD XYZ ALER SOME_TEXT 99.99.182.1 4992399.99.83.7480ブロックされたポリシーGLOBALDENYNONE [ type = "SOME TEXT" pattern = " some-random-pattern "token =" / function() " ] GET 99.99.83.74 / index.html / function()HTTP"-"" Wget / 1.12(linux-gnu) "99.99.182.1 49923"-""- 「」

太字のテキストを抽出したい。これを行うための正規表現は何ですか?

4

2 に答える 2

1

@rprakash:

パターンの構造

<!--
\[(.*?)\]

Match the character “[” literally «\[»  
Match the regular expression below and capture its match into backreference number 1 «(.*?)»  
   Match any single character that is not a line break character «.*?»  
      Between zero and unlimited times, as few times as possible, expanding as needed (lazy) «*?»  
Match the character “]” literally «\]»  
-->

REGEXを使用している間は、ドット演算子の代わりに否定文字クラスを使用することが常に安全です。

ボヘミアンが\[[^\]]+\]言ったように、またはより安全に使用できる可能性があります\[(?#if grouping required)([^\]\[]+)\]

このテーマでより良い足がかりを作るには、こちらをご覧ください

于 2012-04-17T10:39:13.480 に答える
0

これを試して:

\[[^\]]+\]

[^\]]「]以外の任意の文字」の文字クラスです。

于 2012-04-17T09:54:35.590 に答える