2011-11-26 3 views
3

/* */コメントタグの間に文字列を取得する必要があります。私はファイルを解析し、その中のコメントタグの間の文字列を取得しようとしています。私はregexを使うのが初めてです。ですから、どんなアドバイスも大変ありがとうございます。私はすでにいくつか試みましたが、誰も働いていません。REGEXコメントタグの間の文字列を取得する(/ * string * /)

サンプルストリングは、そして、そう/*後と前に改行があり*/

/* 
Comment Here 
Comment Here 
*/ 
+0

を望んでいた場合は、あまりにも試合をトリミング可能性があり、この

if (preg_match('%/\*(.*?)\*/%s', $subject, $matches)) { $result = $matches[1]; } else { $result = ""; } 

を使うのか? –

+0

私はPHPを使用しています。申し訳ありませんが、私はそれを言うことを忘れて.. :) – Glemour

答えて

2

あなたは区切り文字として/を使用するならば、正規表現内のスラッシュはエスケープが必要になりますので、代わりに別のdelimiterを使用するので、それはトリッキーです:

 
"#/\*(.*?)\*/#s" 

最後の区切り文字の後のsDOTALL modifierです。あなたが使用している言語を言っていませんが、この正規表現は(/のエスケープを必要としない)は、Javaのために働くだろう

2

(?s)/\*(.*?)\*/ 

グループ1(すなわち\1)コンテンツあなたを持っていますseek

+0

こんにちはボヘミアン..私はPHPを使用しています。申し訳ありませんが、私はそれを言い忘れました。 – Glemour

2

あなたが探している正規表現のフレーバーがわかりませんが、正規表現hereを使用してコメントを見つけることについての良い議論があります。それをチェックしてください - これは、ここの初期の答えのいくつかが示唆するように簡単ではありません。

ただし、サイトの正規表現はコメントと一致するため、必要に応じて他の回答をここに適用してテキストを抽出する必要があります。 PHPで

+0

デーヴを参考にしていただきありがとうございます。私もそれをチェックします.. – Glemour

1

、あなたはどのような言語を使用している

$result = trim($matches[1]); 
+0

OMG ..この1つの作品..ありがとうございます;) – Glemour

+0

あなたはとても驚いています! :D –

関連する問題