我要检查字符串中是否包含子字符串,但是子字符串包含数字,该数字可以更改。我使用了RegExp,但无法正常工作
let url = "http://localhost:8080/api/issue/board/537/sprint";
url.includes('/issue/board/537/sprint'); // true
值537可以更改
var reg = new RegExp('^[0-9]+$');
url.includes('/issue/board/' + reg +'/sprint'); // false
答案 0 :(得分:2)
那不是您使用正则表达式的方式。
创建一个表达式:
const reg = new RegExp('/issue/board/[0-9]+/sprint');
并针对您的网址进行测试:
const url = "http://localhost:8080/api/issue/board/537/sprint";
const matches = url.test(reg); // true
答案 1 :(得分:0)
var reg = new RegExp('/issue/board/[0-9]+/sprint')
答案 2 :(得分:0)
const condition = new RegExp('\/issue\/board\/[0-9]+\/sprint').test('http://localhost:8080/api/issue/board/537/sprint'); // true
答案 3 :(得分:0)
const reg = new RegExp('/issue/board/[0-9]+/sprint');
const url = "http://localhost:8080/api/issue/board/537/sprint";
const matches = url.match(reg);
console.log(matches ? true: false)
答案 4 :(得分:0)
const regex = new RegExp('\/board\/(.*?)\/sprint');
const url = 'http://localhost:8080/api/issue/board/537/sprint';
const test = regex.test(url);
const matches = regex.exec(url);
console.log(test); // true
console.log(matches[1]); //537
答案 5 :(得分:-2)
最简单的方法就是使用indexOf。像这样
let url = "http://localhost:8080/api/issue/board/537/sprint",
match = '/issue/board/537/sprint';
if (url.indexOf(match) !== -1) {
// true
} else {
// false
}
您要检查的字符串中不包含的字符串的indexOf始终为-1