1

こんにちは、私は JavaScript が初めてで、テキストを抽出したいのですが、その一部だけを抽出したいと思っています。たとえば、次のテキストを抽出した場合:

honey_00.jpg :: 1200 x 1703 :: 369.39 KB

honey_00.jpg他のジャンク情報は欲しくないので教えて欲しいです。私はただファイル名が欲しいだけです。これどうやってするの?

4

3 に答える 3

2

これを試して:

var filename = str.match(/.+\.jpg/);

これは、ファイル名が文字列の先頭にあり、.jpg ファイルを取得している場合にのみ機能することに注意してください。


.jpg、.png、または .gif ファイルを照合するには、次のように使用できます。

var filename = str.match(/.+\.(jpg|png|gif)/)[0];
于 2012-09-08T00:37:56.840 に答える
1

分割機能を使用できます:

var str="honey_00.jpg :: 1200 x 1703 :: 369.39 K";
var n=str.split(" :: ");

デモ: http://jsfiddle.net/g9b3D/1/

正規表現の使用はオプションですが、私が知っている限り、正規表現は遅いです。

編集:多分あなたはこれを見たいと思うでしょう: http://jsperf.com/regex-vs-split/2

于 2012-09-08T00:45:38.837 に答える
0

正規表現を使用します。例えば...

var text = "honey_00.jpg :: 1200 x 1703 :: 369.39 KB";
var pattern = /(.*) :: .* :: .*/;
var fileName = pattern.exec(text)[1];
于 2012-09-08T00:40:49.950 に答える