【发布时间】:2015-04-22 18:36:23
【问题描述】:
我有一个数组数组(称为外部数组 arr1),其中包含许多值,这些值都是内部数组。我正在尝试验证内部数组的元素是否具有以下格式,并以 arr1[1] 为例(arr1 的其他元素,即 arr1[2]、arr1[3]、arr1[4] 等)。格式相同
arr1[1] = ['item1', 'item2', 'item3', 'item4', 'item5']:
item 1 - "abcdef" (variable number of letters)
item 2 - "abcdef" (variable number of letters)
item 3 - "abcdef" (variable number of letters) OR "abcdef asdf" (variable number of letters separated by one whitespace character)
item 4 - "12345678" (eight digits)
item 5 - "123 456 7890" (telephone number with 3 digits followed by 3 digits followed by 4 digits with two whitespace characters as shown)
这是我目前所拥有的一个 sn-p(不确定第二行是如何工作的 - 从不同的 SO 线程得到它):
function f(s) {
var s2 = (""+s).replace(/\D/g, '');
var m = s2.match(/^(\d{3})(\d{3})(\d{4})$/);
}
提前感谢您的帮助。
【问题讨论】:
-
您的要求并不完全清楚。此外,您的内部数组 -
["item1, item2, item3, item4, item5"]- 这是一个包含 1 个项目的数组(一个长字符串),这是您实际得到的,还是有所不同? -
如果答案正确,请将其标记为正确,以便其他人可以从中获得帮助。
-
James - 你解释得对。每个内部数组都有一个长字符串,其中的组件用逗号分隔。我想在逗号分隔的组件上使用正则表达式
-
嗨 - 我传递的值是对象。我可以对 typeof() = object 的项目执行正则表达式吗?
标签: javascript arrays regex