使用 Javascript 计算字符串中仅字符(不是符号)的字符串长度
Calculate the string length of only characters (not symbols) in the string using Javascript
我正在尝试 select 仅根据字符长度忽略符号通过 IF 语句传递的单词。
例如如果我有单词“你好!”我希望 if 语句将其识别为 5 个字符的长度。
我想在将符号添加到 updatedString 时将其保留在单词中。我只是不想在原始计数中计算符号。我花了一段时间考虑正则表达式选项,但正在努力寻找适合这种特殊情况的方法。
部分代码示例如下。 (updatedString 在 if 循环外声明)
for (let word in arr) {
if (arr[word].length == 5 || arr[word].length == 6) {
let bold = arr[word].slice(0, 3)
let normal = arr[word].slice(3)
updatedString += `<b>${bold}</b>${normal} `
}
else if {
...
}
}
我最终想要的是“arr[word].length == 5”区域只计算字符。
为了这个程序,我假设所有通过用户输入的词都是普通新闻或学术文章中使用的词,没有太晦涩的词。
任何建议将不胜感激,谢谢。
您可以像这样使用正则表达式:
text = "hello!"
text.match(/[a-z]/g).join("") // join to return a string without any symbols
如果您需要匹配更多字符,只需更新模式即可。
在您的特定情况下,它看起来像这样:
for (let word in arr) {
if (arr[word].match(/[a-z]/g).length == 5 || arr[word].match(/[a-z]/g).length == 6) {
let bold = arr[word].slice(0, 3)
let normal = arr[word].slice(3)
updatedString += `<b>${bold}</b>${normal} `
}else if (/* [...] */) {
// [...]
}
}
我正在尝试 select 仅根据字符长度忽略符号通过 IF 语句传递的单词。
例如如果我有单词“你好!”我希望 if 语句将其识别为 5 个字符的长度。
我想在将符号添加到 updatedString 时将其保留在单词中。我只是不想在原始计数中计算符号。我花了一段时间考虑正则表达式选项,但正在努力寻找适合这种特殊情况的方法。
部分代码示例如下。 (updatedString 在 if 循环外声明)
for (let word in arr) {
if (arr[word].length == 5 || arr[word].length == 6) {
let bold = arr[word].slice(0, 3)
let normal = arr[word].slice(3)
updatedString += `<b>${bold}</b>${normal} `
}
else if {
...
}
}
我最终想要的是“arr[word].length == 5”区域只计算字符。
为了这个程序,我假设所有通过用户输入的词都是普通新闻或学术文章中使用的词,没有太晦涩的词。
任何建议将不胜感激,谢谢。
您可以像这样使用正则表达式:
text = "hello!"
text.match(/[a-z]/g).join("") // join to return a string without any symbols
如果您需要匹配更多字符,只需更新模式即可。
在您的特定情况下,它看起来像这样:
for (let word in arr) {
if (arr[word].match(/[a-z]/g).length == 5 || arr[word].match(/[a-z]/g).length == 6) {
let bold = arr[word].slice(0, 3)
let normal = arr[word].slice(3)
updatedString += `<b>${bold}</b>${normal} `
}else if (/* [...] */) {
// [...]
}
}