[英]JavaScript Regex finding all substrings matching the starting and ending pattern
[英]Pattern matching for a string starting with character and ending with digit
這是一個有效字符串,始終以固定字符串SOME_START_FORMAT_
然后以一個或多個數字結尾。 所以有效的字符串是
SOME_START_FORMAT_1234
SOME_START_FORMAT_12
無效的字符串是
SOME_INVALID_FORMAT_1234
SOME_START_FORMAT_
SOME_START_FORMAT_1234_
SOME_START_FORMAT_1234_MORE
我正在嘗試使用此正則表達式^SOME_START_FORMAT_\\d+$
。 我做錯了什么?
您需要檢查字符串的末尾而不是行尾,因此數字之后的任何內容都不會匹配(\\ z):
^SOME_START_FORMAT_\d+\z
對於多行,這在regxr.com上有效
/^SOME_START_FORMAT_\d+$/gm
只需添加多行標志。
您的正則表達式很好。 我認為小提琴令人困惑,因為它將所有輸入視為帶有多個換行符的單個String。
您的模式可以在各個字符串上正常工作:
var input = [ "SOME_START_FORMAT_1234", "SOME_START_FORMAT_12", "SOME_INVALID_FORMAT_1234", "SOME_START_FORMAT_", "SOME_START_FORMAT_1234_", "SOME_START_FORMAT_1234_MORE" ]; var pattern = /^SOME_START_FORMAT_\\d+$/; input.forEach(function(s) { var isMatch = s.match(pattern) !== null; document.write(s + ": " + isMatch + "<br>") })
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.