查找并删除撇号和之前的一个字母?
Posted
技术标签:
【中文标题】查找并删除撇号和之前的一个字母?【英文标题】:Find and remove apostrophe and one letter before? 【发布时间】:2020-05-04 05:26:54 【问题描述】:目标是清理字符串并删除对用户和 SEO 不重要的元素,即在我的例子中(撇号前的字母)。我主要想要一个解决方案或一个正则表达式的解释,它可以在 php 中做到这一点,但在 JS 中逻辑没有什么不同。
字符串:.../mode-d'emploi/...
变成:
网址:/mode-emploi/slug-34
也许有人可以帮助我。
【问题讨论】:
考虑查看String.prototype.replace
和正则表达式。
使用 javascript 还是 PHP?
【参考方案1】:
您可以使用撇号进行拆分,然后删除第一个拆分字符串的最后一个字符,以便模拟撇号之前的字符的删除:
var url = "/mode-d'emploi/slug-34";
var resArray = url.split("\'");
resArray[0] = resArray[0].substring(0, resArray[0].length - 1);
var res = resArray.join('');
console.log(res);
【讨论】:
【参考方案2】:这会删除撇号和撇号之前的任何字符。
var url = "/mode-d'emploi/slug-34";
res = url.replace(/.'/, '');
console.log(res);
如果您只想删除一个字母,请使用:
var url = "/mode-d'emploi/slug-34";
res = url.replace(/[a-z]'/i, '');
console.log(res);
【讨论】:
以上是关于查找并删除撇号和之前的一个字母?的主要内容,如果未能解决你的问题,请参考以下文章
R 正则表达式替换除句子标记、撇号和连字符以外的所有标点符号