2016-03-31 5 views
0

Pythonで複数行コメント用の正規表現を書いてみたいと思います。私はこの式をJavaで複数行コメントのために修正しようとしていましたが、Pythonの複数行コメントが異なる方法で動作するため、できませんでした。Pythonの複数行コメントの正規表現

Java用の正規表現の式:

(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|(//.*) 

Pythonで複数行コメントの例:!。

''' comment comment 
comment comment 
''' 

または

""" comment comment 
comment comment 
""" 
+0

複数行の文字列リテラルと複数行のコメントを混同しているようです。参考文献[複数正規表現のPythonコメント用正規表現](http://stackoverflow.com/questions/7081882/python-3-regular-expression-to-find-multiline-comment)を参照してください。 –

+0

返事をありがとう。しかし、このリンクはPythonのPHPの複数行コメントの正規表現の解決策を提供しているようです。 –

答えて

0

(技術的には、複数行の文字列=複数行コメントしかし、その点を除いて)

正規表現(['"])\1\1(.*?)\1{3}は動作しますが、必ずre.DOTALLを使用してください。

  • (['"])'または"を見つけ、
  • \1{3}が3つの以上の同一の引用符
を探す...までは同じ引用符の2以上が
  • (.*?)すべてのものをキャプチャして下さい\1
  • \1\1でそれをキャプチャ
  • +0

    返信いただきありがとうございます!この式はブレークラインを許可しますか?私はこのウェブサイトでそれをテストしていたので、[リンク](https://regex101.com/r/wY1hU9/1#python)、引用符が同じ行にあるかどうかだけを認識します。 –

    +0

    あなたはこれを見ましたか?**しかし、あなたは必ず再使用してください.DOTALL **?私はそれを理由で置いた。次のように使用します: 're.compile(" regex "、re.DOTALL)' – Laurel