0

組織の名前とそのURLを含む長いHTMLファイルがあります。コード内の各組織の「セクション」は、「組織」という単語とそれに続く多くのコードで区切られ、そのURLはそのコード内にあり、「組織」という単語で終わります。

例えば:

組織-多くのコード(URLは内部のどこかにあります)-組織

正規表現を使用してURLを検索および抽出しようとしましたが、役に立ちませんでした。

organization(?<Protocol>\w+):\/\/(?<Domain>[\w@][\w.:@]+)\/?[\w\.?=%&=\ @/$,]*organization

私の問題は、「組織」という単語を使用してURLの検索を区別しようとしているところにあると思いますが、よくわかりません。

4

2 に答える 2

0

これからグループ1を試してください:

organization.*\b(\w+://[\w.?%&=@/$,-]+).*?organization
于 2012-12-14T18:14:43.950 に答える
0

現在の正規表現は、「組織」の2つのインスタンスの間にすぐに挟まれたものを検索しています。「組織」とURLの間に文字が存在する可能性がある場合は、何かのインスタンスに貪欲でない一致を導入する必要があります(.*?)。ミックスに改行がある場合は、を使用する必要があります(?:.|\n)*?

したがって、正規表現は次のようになります。
organization(?:.|\n)*?(?<Protocol>\w+):\/\/(?<Domain>[\w@][\w.:@]+)\/?[\w\.?=%&=\ @/$,]*(?:.|\n)*?organization

太字の挿入のため、これは誤ってスペースがあるように見えますが、ありません。これを選択してコピー/貼り付けすると、スペースなしで正しく貼り付けられます)

于 2012-12-14T18:19:49.000 に答える