自定义javascript正则表达式类wordpress页面平铺

自定义javascript正则表达式类wordpress页面平铺,javascript,regex,reactjs,Javascript,Regex,Reactjs,我在react上,我正在处理一个显示Url路径的输入,比如wordpress页面标题,你在输入中添加一个标题,它会显示页面的路径 我成功地完成了整个过程,但我仍然需要一个自定义正则表达式来显示输入值的Url: 使用。替换 我需要在结尾和开头修剪空白 将所有空格替换为“-”,但避免连续出现2个空格 将特殊字符替换为“-” 将çñöì等字母替换为c n o e i 有人能帮我吗?这是我的看法。您需要为要替换的附加变音字符和重音字符添加一些行。这是给做这件事的其他人的一个建议 更新:使用.normal

我在react上,我正在处理一个显示Url路径的输入,比如wordpress页面标题,你在输入中添加一个标题,它会显示页面的路径

我成功地完成了整个过程,但我仍然需要一个自定义正则表达式来显示输入值的Url:

使用。替换

我需要在结尾和开头修剪空白 将所有空格替换为“-”,但避免连续出现2个空格 将特殊字符替换为“-” 将çñöì等字母替换为c n o e i
有人能帮我吗?

这是我的看法。您需要为要替换的附加变音字符和重音字符添加一些行。这是给做这件事的其他人的一个建议

更新:使用.normalize,而不是指定每个变音符号替换

函数clearResult{ document.getElementById'result'。值=; } 函数stripUrl{ var text=document.getElementById'input'。值; var newText=text.trim .将“NFKD”标准化 .替换/[\u0300-\u036f]/g, .replace/[^\w/:.]/gi,'-'//清除特殊字符 .replace/-{2,}/gi,'-';//处理多个破折号 document.getElementById'result'.value=newText; } 条带URL
当一行中有多个破折号时,您希望发生什么?压缩成一个?你有没有代码来显示你想做什么,或者你自己尝试了什么,这样提供答案的人就可以避免暗示你已经做了什么?最好添加一些输入和输出示例。我花了18个小时在网站上工作,当我读到这篇文章时,我可以看到它现在有多混乱。@ChrisBaker我没有尝试任何我自己对regex不擅长的东西。我在谷歌上搜索了这个,但是没有找到任何适合我需要的东西。我用这个替换所有的。替换。。。通过。为变音符号规范化'NFKD',但我注意到当我输入ça va?它显示c-a-va,而我需要它是ca-va,这与显示man-ana的mañana是一样的,它显示man-ana如何修复它?我在上面的替换中添加了ñ作为一个附加示例。它返回马纳纳。如果你为你的c变音符号添加相同的替换,它将按预期工作。对我来说不起作用,因为我编辑了如下代码@user3359675啊,错过了你正在使用的代码。正常化。这种方法确保变音符号是unicode,然后我们可以用ascii对应字符替换unicode字符以更好地解释。否则,答案已更新。如果其他人发现此答案并希望使用它并使用法语,请添加此答案。替换/[œ]/g,oe,以便您在编写cœur而不是c-ur时可以获得例如coeur一词