正则表达式以匹配地址中的任何字符串组
Regexp to match any group of string within an address
例如,如果我有这个地址; 820 10th Avenue New York, New York 10019
我想在正则表达式中匹配以下内容;
第10大道820号
820第10大道
纽约第10大道820号
以上是唯一预期的格式
到目前为止我的代码
var re = /(^'d*'D*'w*)/i;
var str = '820 10th Avenue New York, New York 10019';
它应该像这样工作;
if(re.test('820 10th Avenue')) console.log('pass'); // pass
if(re.test('820 10th Ave')) console.log('pass'); // pass
if(re.test('820 10th')) console.log('pass'); // pass
if(!re.test('820 9th Ave')) console.log('fail'); // fail
if(!re.test('820')) console.log('fail'); // fail
-
如果要检查输入字符串是否是给定字符串的一部分,可以使用
String.prototype.indexOf()
:var str = '820 10th Avenue New York, New York 10019'; str.indexOf('820 10th Avenue') > -1 // true str.indexOf('820 10th Ave') > -1 // true str.indexOf('820 10th') > -1 // true str.indexOf('820 9th Ave') > -1 // false str.indexOf('820') > -1 // true
更具体地说,与
0
进行比较以查看它是否是前缀:var str = '820 10th Avenue New York, New York 10019'; str.indexOf('820 10th Ave') === 0 // true str.indexOf('20 10th Ave') === 0 // false
-
根据给定的示例添加模式匹配:
function testAddress(input) { var address = '820 10th Avenue New York, New York 10019'; var re = /^'d+('s'w+){2,}/; return re.test(input) && address.indexOf(input) === 0; } testAddress('820 10th Ave') // true testAddress('820 10th Avenue') // true testAddress('820 10th Avenue New York') // true testAddress('820 9th Ave') // false testAddress('820 10th') // false testAddress('820') // false
我什至认为我不需要正则表达式。这对我有用!
var str = '820 10th Avenue New York, New York 10019';
var n = '820 10th Ave';
var position = str.search(n);
if (position != -1) {
console.log('matches')
}else{
console.log('no match');
}
相关文章:
- jQuery中是否内置了任何字符串格式化函数
- 如果URL中有任何字符串变体匹配,则返回true
- 当用户在命令提示符中选择任何字符串时,节点Js不为任何请求提供服务
- 使用jQuery检查html元素中是否存在任何字符串
- HTML5 localStorage 密钥可以是任何字符串
- 如何编写与任何字符串匹配的正则表达式
- 正则表达式以匹配地址中的任何字符串组
- Regex:匹配日期和冒号之间的任何字符串
- 如何使用javascript搜索和替换iframe中的任何字符串
- Javascript Regex-替换匹配字符串的所有出现,括号之间的任何字符串除外
- RegExp匹配除两个保留字符串外的任何字符串
- 我试图找出一个正则表达式在JavaScript中删除点之前的任何字符串
- 如何从字符串数组中删除任何字符串
- 有没有任何字符串方法,能让我把一串数字,转换成一串数字和字母
- 匹配除两个特定字符串之外的任何字符串
- jquery正则表达式问题匹配任何字符串a-zA-Z0-1
- 使用regex获取最后两个斜杠之间的任何字符串或其他最后两个相同字符
- 如何删除方括号内的任何字符串
- 正则表达式匹配前面没有另一个字符串的任何字符串
- ReCaptcha不接受任何字符串