使用允许斜线的Regexp验证slug

axr492tv  于 2023-06-25  发布在  其他
关注(0)|答案(1)|浏览(90)

我使用regexp来验证一个slug。
const rule = new RegExp('^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$')
它工作得很好,虽然,我想/有他们接受
示例:my-parent-page/my-child-page
使用我原来的Regex,这个slug是无效的,而它应该是正确的
谢谢你

u2nhd7ah

u2nhd7ah1#

向定界表达式[-/]添加一个斜杠,以便字母数字部分可以通过...

const re = new RegExp('^[A-Za-z0-9]+([-/][A-Za-z0-9]+)*$');

const egs = [
  'justSlash/justSlash',
  'just-dash',
  'dash-and-slash/dash-and-slash',
  '&crap'
];

egs.forEach(eg => console.log(re.test(eg) ? "match" : "no match") )

相关问题