簡體   English   中英

簡單的正則表達式模式匹配

[英]Simple Regex Pattern Matching

這是我的模式

<a href="(.*?)" onmousedown="test\(\)">

這是來源

<tags><tags><a href="http://google.com" onmousedown="test()"></tags></tags>

如果使用該模式,則會得到以下結果:

<a href="http://google.com" onmousedown="test()">

我想要得到的只是

http://google.com

任何幫助,將不勝感激。 謝謝! :)

我對正則表達式進行了輕微修改(在兩端添加.* ),使其與下面的示例均適用。

var regex = /.*?<a href="([^">]*)" onmousedown="test\(\)">.*/; 
var input = '<tags><tags><a href="http://google.com" onmousedown="test()"></tags></tags>';

方法1:使用正則表達式替換。 在這種情況下,這會使整個字符串與模式匹配,並僅將其替換為第一個捕獲的組( $1 )。

url1 = input.replace(regex, "$1");
alert(url1)

方法2:對輸入字符串和模式使用正則表達式匹配,然后僅選擇第一個捕獲的組( [1] )。

url2 = regex.exec(input)[1];
alert(url2);

在這兩種情況下,輸出都是href標記中的網址。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM