2016-10-19 6 views
1

正規表現を使用すると、出力がVerdana、Arial、sans-serifになるようにコメントと/ *の間にテキストを抽出する必要があります。この問題にどのように接近するかについての指針は参考になります。正規表現を使用してコメントを無視します

: Verdana, Arial, sans-serif /*{ffDefault}*/; 
+0

これは、解析する完全な行の例ですか? – Clay

+0

はい。完全な行の別の可能性は、/ * {ffDefault} */Verdana、Arial、sans-serif/* {ffDefault} * /です。 (OR)/ * {ffDefault} */Verdana、Arial、/ * {ffDefault} */sans-serif/* {ffDefault} * /; – neelmeg

+0

[正規表現の学習](http://stackoverflow.com/questions/4736/learning-regular-expressions)の可能な複製 – Biffen

答えて

2

の操作を行います。

:\s*([^/]+)\s*/\*\{[^}]*\}\*/ 

のみキャプチャグループは、あなたの希望の部分です。

  • :\s*コメント続いて、

  • \s*マッチゼロ個以上の空白を

  • ([^/]+)マッチ次/点で最大空白の任意の数が続き、捕捉グループに入れ、:一致します(/\*\{[^}]*\}\*/

Demo

+0

一見、彼がCSSファイルを解析しているように見えるので、起動が必要ないかもしれませんにんじん。 – Clay

+0

@ClaytonSmithそれについての注釈を追加しました。ありがとうございます。 – heemayl

+0

ありがとう、もし私が同じ行のコメントを無視したいのであれば、どうすればいいのですか?/ * {ffDefault} */Verdana、Arial、sans-serif/* {ffDefault} * /; – neelmeg

関連する問題