2011-05-14 37 views
3

我是新來的正則表達式。如何在JavaScript中使用正則表達式來查看字符串是否以句點開頭?

下面的代碼按預期工作,打印的第一「真」,然後「假」,在週期前的反斜槓是:

var pattern = new RegExp(/\./); 
document.write(pattern.test(".")); 
document.write(pattern.test("a")); 

但是爲什麼以下打印「假」:

var pattern = new RegExp(/\b\./); 
document.write(pattern.test(".")); 

這個時期畢竟是在字符串的開頭。

回答

5

你想使用^嘗試 -

/^\./ 

如果你有

/\b\./ 

Hello. How are you.

+1

我想我現在明白了。我剛剛閱讀了關於單詞/非單詞字符區分的描述,並且我猜測一個字符串需要以\ b的單詞字符開始,將其視爲單詞。 – zjmiller 2011-05-14 02:01:11

1

.的匹配它不工作,因爲有話打破,你首先需要有一個詞。

使用\b,這會工作:

var pattern = new RegExp(/a\b\./); 
document.write(pattern.test("a.")); 

如果你正在做的是測試的第一個字符,你可以不用一個正則表達式,如果你願意的話。

".".charAt(0) === "." 
相關問題