2016-11-20 2 views
-1

文字列を「英数字、アンダースコア、任意の数の開いて閉じた角かっこ」とどのように一致させるか。 例:
" CDN_MBIT_hresp_s_reg[0]_MB_hresp_s_reg[1]bbjabs_chiansmokrs[6] "英数字、_および任意の数の角かっこの組み合わせを含むPerl一致文字列

私はこれが動作しないようです$line=~/[a-zA-Z0-9_/[/]]/;
を試してみました。

P.S.この質問はRegex Matching Square Brackets と全く同じですが、同じではありません ありがとうございます。

+4

エスケープ文字が間違っています。 '/'ではなく '\'です。 '$ line =〜/ [a-zA-Z0-9 _ \ [\]] /'を試してください。 – PerlDuck

答えて

3

エスケープに間違ったスラッシュが使用されています。また

/[a-zA-Z0-9_\[\]]/ 

、あなたは単に

/[\w\[\]]/ 

それらの一致正確に一つの文字の両方を使用することができます。文字列をキャプチャしたい場合、

/([\w\[\]]+)/ 
関連する問題