我有一個數據字符串,它通常會像這樣讀取:「0010,0010,0030」。如果所有數字都不匹配,我需要通過設置警報來驗證該字符串。所以如果字符串看起來像這個「0010,0010,0010」那麼沒有問題,我的邏輯按計劃進行。但是如果它看起來像這樣:「0010,0010,0030」,那麼我需要提醒用戶他們選擇了不正確的操作(0010和0030是邏輯中的操作),並且他們必須重新選擇。有任何想法嗎?用於操作的Javascript字符串驗證
回答
只需在,
上分割字符串,然後比較條目。
像下面這樣(我沒有測試這一點,但它的輪廓)
var input = "0010, 0010, 0010",
tokens = input.split(','),
result = true;
for (var i = 0; i <= tokens.length - 1; i++) {
if (i <= tokens.length - 2) {
// get rid of whitespace
if (tokens[i].replace(/\s/g, '') !== tokens[i+1].replace(/\s/g, '')) result = false;
}
}
alert(result);
轉換爲數字將降至微不足道的數字(例如''0010''將成爲'10' ) – jbabey 2012-08-03 17:37:22
@jbabey - 真的,你的評論幫助我簡單地這,thanx – hvgotcodes 2012-08-03 17:38:36
這是完美的,我重新配置,以適應我的邏輯,它工作正常,非常感謝每個人 – Deckard 2012-08-03 18:09:16
試試這個:
var split="0010, 0010, 0030".split(", ");
var ok = true;
for (i = 0; i < split.length - 1; i++)
{
if (split[i] != split[i + 1])
{
//reset_logic();
ok = false;
break;
}
}
if (ok)
{
//all_good();
}
我會建議定期表達:
// gives you an array with values "0010", "0010", and "0030"
var matches = '0010, 0010, 0030'.match(/(\d+)/);
然後只是循環比賽並將它們的鄰居進行比較。如果有任何不常見的,你有你的答案,所以打破循環。
var allMatch = true;
for (var i = 1; i < matches.length; i++) {
if (matches[i-1] !== matches[i]) {
allMatch = false;
break;
}
}
if (allMatch) {
...
} else {
...
}
- 1. JavaScript的字符串操作
- 2. 的JavaScript字符串操作
- 3. Javascript字符串驗證
- 4. JavaScript操作HTML字符串
- 5. JavaScript字符串操作
- 6. javascript字符串操作
- 7. javascript字符串操作
- 8. 關於字符串操作
- 9. 使用javascript驗證json字符串
- 10. 如何驗證JavaScript中的字符串?
- 11. 如何驗證字符串只用於非字母字符jquery驗證
- 12. Javascript字符串賦值操作符
- 13. javascript中的字符串操作
- 14. Javascript代碼中的字符串操作
- 15. 字符串時間驗證(在javascript中)
- 16. 簡單的JavaScript驗證碼基於字符串從數組
- 17. 關於字符串中的操作
- 18. Javascript字符串操作和innerHtml
- 19. Javascript日期/字符串操作
- 20. 互動字符串操作通過JavaScript
- 21. Javascript字符串操作 - 網址
- 22. 使用字符串操作
- 23. 字符串操作
- 24. 字符串操作
- 25. 字符串操作
- 26. 字符串操作
- 27. 字符串操作
- 28. 字符串操作
- 29. 字符串操作
- 30. 字符串操作?
檢查了這一點:http://jsfiddle.net/hrBTX/ – canon 2012-08-03 17:43:35
這也非常有幫助謝謝佳能 – Deckard 2012-08-03 18:31:13