我最近开始使用来自VBA的Javascript,我想知道是否有等同于vba的“ like”和“ *”表达式。
例:
If test Like "01##############10*" Then
最佳答案
是的,您正在寻找正则表达式。例如,如果在您的示例中#
表示“数字”而*
表示“任何”,则正则表达式将为/^01\d{13}10/
,例如:
if (/^01\d{13}10/.test(test)) {
其中说:
^
-匹配字符串的开头(“开始断言”或“开始锚点”)01
-按字面匹配01
\d{13}
-精确匹配一个数字(\d
)13次10
-按字面匹配10
$
锚的缺失意味着我们不在乎上面的内容。正则表达式是带有方法的对象。这些方法之一,
test
,检查字符串是否与表达式匹配,这是可用的最基本的操作之一。还有exec
(查找第一个/下一个匹配项)。从另一侧来看,字符串还具有match
方法,该方法接受正则表达式并在字符串内查找匹配项。有关正则表达式的更多信息:
MDN
SO Regular Expression FAQ