-1

簡単な質問。いくつかのURLをコピーして貼り付けることができるテキスト領域がある場合、それらすべてを配列に解析したいと思います。コンテンツを置き換えたくないが、Javascriptを使用してテキスト領域のすべてのURLを配列に取得します。

編集

http://jsfiddle.net/sujesharukil/hyEem/19/

フィドルを作成しました。私はそれをほとんど機能させています。唯一の問題は、クエリ文字列パラメータを取得しないことです。それが問題だったのかもしれません。

これは私がテキスト領域に入れたものです

www.google.com ssdfsdfasdfasdf http://someplace.com?x=sdfsdf

regex = new RegExp(/[-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}\b(\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?/gi);

2つのアイテムを返しますが、2番目のアイテムのクエリ文字列パラメータは返しません。

ヘルプをいただければ幸いです。

4

2 に答える 2

2

テキストエリアで URL を検索するための RegEx:((?:https?:|www\.)[^\s]+)
ここで説明されたデモ: http://regex101.com/r/vZ0aE9

于 2013-03-21T18:37:21.070 に答える
2

それらが改行で区切られると仮定すると、これを行うことができます:

var array = document.getElementById('yourTextAreasID').value.split('\n');

または、URL だけがテキストエリアにない場合は、正規表現を使用する必要があります。このようなもの:

var array = document.getElementById('yourTextAreasID').value.split(/[-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}([\/-a-zA-Z0-9@:%_\+.~#\?&//=]*)*/gi);

これは、さまざまな形式の URL を見つけるための優れた正規表現です。

于 2013-03-21T18:32:45.460 に答える