![](/img/trans.png)
[英]Regular expression to extract a 10 digit mobile number from string in javascript
[英]Javascript extract regular expression from string
我嘗試了幾種方法,我無法弄清楚為什么我的.match總是返回null。 鑒於以下字符串,我如何將2017年6月4日提取到自己的變量中?
var str = "I need the only the date 04-Jun-2017\n"
str.replace(/\n/g,' ');
var date = str.match(/^[01][0-9]-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-\d{4}$/);
alert(date)
首先, str.replace(/\\n/g,' ');
不修改str
var,因為字符串是不可變的。 然后,您不需要錨點^
和$
,因為日期在字符串內部,它不等於字符串本身。 此外,您需要匹配從1
到31
天數,但[01][0-9]
僅匹配從00
到19
。
你可以考慮使用
var str = "I need the only the date 04-Jun-2017\\n" var date = str.match(/\\b\\d{1,2}-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-\\d{4}\\b/i); if (date) { console.log(date[0]); }
錨點用字邊界\\b
替換,日期部分更改為\\d{1,2}
匹配任何1或2位數。 i
修飾符將使模式不敏感。
首先,你應該更清楚你的問題。 第二,這可能就是答案
var str = "I need the only the date 04-Jun-2017\n"
var result = str.replace('I need the only the ','');
alert(result);
看看.replace(valueToSearch,valueToReplace)
函數如何需要兩個參數,首先是要替換的文本,所以你放入其中的內容將在字符串內搜索,第二個參數是它將替換它的值,所以如果你想擺脫它只是放一個空字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.