2013-03-09 112 views
2

開始我試圖檢查一個字符串的字符開頭:/的JavaScript - 檢查字符串

我怎樣才能做到這一點?

+0

可能的重複[如何檢查字符串「StartsWith」另一個字符串?](http://stackoverflow.com/questions/646628/how-to-check-if-a-string-startswith-another-string) – 2015-11-09 08:47:47

回答

13
if(someString.indexOf('/') === 0) { 
} 
+1

我會使用'==='。 – c24w 2013-03-09 13:15:07

+3

雖然這確實可以很好地發現,但它不是「最佳」解決方案,因爲它需要遍歷整個字符串。 – 2013-03-09 13:16:02

+0

@Tririar - 我絕對同意。 – 2013-03-09 13:52:15

9

字符串的字符可以通過下標運算符[]訪問。

if (string[0] == '/') { 

} 

[0]意味着字符串中的第一個字符作爲索引是基於0在JS。以上也可以用正則表達式來完成。

+0

@JustinNiessner對你來說這是不必要的? – 0x499602D2 2013-03-09 13:02:53

+1

@JustinNiessner只要string是一個變量就可以。 – 2013-03-09 13:06:20

+0

是的,因爲我們只是檢查字符串的第一個索引是'/'而沒有別的。 – wei2912 2013-03-09 13:10:13

0
<script> 
    function checkvalidate(CheckString) { 
     if (CheckString.indexOf("/") == 0) 
     alert ("this string has a /!"); 
    } 
</script> 

<input type="text" id="textinput" value="" /> 
<input type="button" onclick="checkvalidate(document.getElementById('textinput').value);" value="Checkme" /> 
+0

我的歉意=)編輯!在開始寫出答案之前,我會正確地閱讀這個問題:)! – MackieeE 2013-03-09 13:07:28

0
var str = "abcd"; 

if (str.charAt(0) === '/') 
0
data.substring(0, input.length) === input 

參見以下示例代碼

var data = "/hello"; 
var input = "/"; 
if(data.substring(0, input.length) === input) 
    alert("slash found"); 
else 
    alert("slash not found"); 

Fiddle

+0

爲什麼你拒絕投票? – 2013-03-09 13:02:36

+0

(投票不是我)但有些人不在意評論 – asifsid88 2013-03-09 13:06:38

+0

請檢查我修改了答案,並在我看來它的效率。如果你喜歡,就投票吧。 – 2013-03-09 13:09:45

2

替代String.indexOf/^\//.test(yourString)