gpt4 book ai didi

javascript - 替换字符串中的最后一个单词

转载 作者:行者123 更新时间:2023-11-29 18:04:46 33 4
gpt4 key购买 nike

我正在使用 API 调用来填充我网站上的某些字段。这些字段由地址的不同部分填充。但是,在我的第一个地址行字段中,该值是缩写的。例如,如果我有“Smith Street”,它将被插入为“Smith St”。为了解决这个问题,我使用 javascript 来替换值,例如:

value = value.replace("St", "Street");

但是,例如,如果我有一个值为“Stanley Street”的值,它将返回“Streetanley Street”。

有谁知道我可以用来将替换方法应用于字符串中最后一个单词的方法吗?

最佳答案

您正在寻找正则表达式。如果您打算编写大量 JavaScript,请习惯它们。

value = value.replace(/St$/, "Street");

将替换 "St" 仅当它是字符串的末尾时。 ($ 匹配字符串结尾)

如果我们想在字符串末尾允许空格,并且仍然替换,我们会说:

value = value.replace(/St\s*$/, "Street");

其中 \s 表示“任何空白字符”,* 表示“0 次或多次”。

如果我们想同时匹配 "St""St.",我们会说:

value = value.replace(/St\.?\s*$/, "Street");

其中 \. 只是一个“.”,而 ? 表示“最多一次”。

为避免替换单词中间的“st”,请使用单词边界 (\b):

value = value.replace(/\bSt\.?\s*$/, "Street");

您可能希望使用不区分大小写的匹配 (/i),因此“Main st”的转换与“Main Street”一样:

value = value.replace(/\bSt\.?\s*$/i, "Street");

关于javascript - 替换字符串中的最后一个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32228583/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com