1

以下の正規表現を使用して、テキスト内の最初のリンクを見つけています。現在、このバージョン番号はリンクとして誤解されています。

ver.1.0
xx.11
v1.2

正規表現:

var findLink:RegExp = /([äöüÄÖÜa-zA-Z0-9\-\:\/]{2,}+\.[\*\!\'\(\)\;\:\@\&\=\$\,\?\#\%\[\]\~\-\+\_äöüÄÖÜa-zA-Z0-9\/\.]{2,}+)/g
var getLink = themessage.text.match(findLink)
trace(getLink[0])

テキスト例:

Lorem Ipsum ver.1.0 は、印刷 v1.2 および組版業界の単純なダミー テキスト xx.11 です。example.com (example.com はリンクとしてのみ表示されます)

2 番目のドットの後の文字 (ドットがある場合) が az で、最小 2 文字である必要があるという条件を RegExp に追加するにはどうすればよいですか? そのため、example.co または www.example.co は機能しますが、example.1 または 1.example.a は URL として解釈されません。

4

2 に答える 2

1

そのために正規表現を使用できます。

var find:RegExp = / (https?\:\/\/[^ ]*)/g;
trace(myText.match(find));

正規表現は

a whitespace
http
s but not necessarly
://
a bunch of characters that are not whitespaces

( ) は、正規表現がキャッチする必要がある文字のグループを区切るためにあります。末尾の g パラメータは、RegExp が最初の一致の後に検索を停止しないように指示します。

補遺

http を含まない URL に一致させたい場合、これは内部に少なくとも 1 つのポイントを含む単語を取得するために機能するはずです。

/ ([a-z\:\/]+\.[a-z\.]+) /g

小文字のアルファベットの少なくとも 1 文字、: および / ドット 小文字のアルファベットの少なくとも 1 文字および .

于 2013-09-14T12:11:59.403 に答える