pythonの文字列変数に保存されたソースコードファイル名を抽出しようとしています。以下のようにしかし、変数は、HTMLタイプのタグや他のコンテンツの多くが含まれています。しかし正規表現Pythonを使用してテキストからファイル名を抽出する
<p> Result = FAILURE<br/ hshreedharan : <a href="http://git-wip-
<ul>
<li>flume-ng-sinks/flume-hdfs-sink/src/main/java/org/apache/flume/sink/hdfs/HDFSEventSink.java</li>
<li>flume-ng-sinks/flume-hdfs-sink/src/test/java/org/apache/flume/sink/hdfs/TestBucketWriter.java</li>
<li>flume-ng-sinks/flume-hdfs-sink/src/main/java/org/apache/flume/sink/hdfs/BucketWriter.java</li>
<li>sinks/flume-hdfs-sink/src/main/java/org/apache/flume/sink/hdfs/BucketWriter.java</li>
<li>sink.src.main.java.org.apache.flume.sink.hdfs.BucketWriter.java</li>
</ul>
、私は他のすべてのテキスト、HTMLタグを無視して、出力のみを抽出するためのpythonライブラリを使用して「再」適切な正規表現を探しています変数に含まれるソースコードファイル
flume-ng-sinks/flume-hdfs-sink/src/main/java/org/apache/flume/sink/hdfs/HDFSEventSink.java
flume-ng-sinks/flume-hdfs-sink/src/test/java/org/apache/flume/sink/hdfs/TestBucketWriter.java
flume-ng-sinks/flume-hdfs-sink/src/main/java/org/apache/flume/sink/hdfs/BucketWriter.java
sink.src.main.java.org.apache.flume.sink.hdfs.BucketWriter.java
sinks/flume-hdfs-sink/src/main/java/org/apache/flume/sink/hdfs/BucketWriter.java
現在、私は次のコードを使用しています:適切な正規表現や機能変更のための
import re
htmlText= \\ may be variable containing above code
matchSrcFiles= re.findall('\\.[^.]*.java$', htmlText) \\text ending .java
ヘルプのような、のrelaventソースコードファイルを抽出するre.subは理解されるものとします。
なぜあなたはre.subを使用したいのですか?パターンを他のパターンと照合して置き換えますか? – MYGz
実際、私はソースコードファイルを抽出するだけです。 re.subまたはre.findallが有効かどうかを問い合わせる。 – Analyzer
re.findall()はジョブを行います。 re.sub()は置換に使用されます。 – MYGz