首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将序数字符串转换为序号

将序数字符串转换为序号
EN

Stack Overflow用户
提问于 2019-01-14 14:09:24
回答 3查看 263关注 0票数 3

我想把普通字符串转换成它的编号,例如

  • “1”至1
  • “第二”至第二
  • “第三”至第三

..。

尝试了这个函数,但是返回它的序号,而不是数字

function nth(n){return["st","nd","rd"][((n+90)%100-10)%10-1]||"th"}

它应该是这个函数的反义词。

EN

回答 3

Stack Overflow用户

发布于 2019-01-14 14:11:44

您可以删除最后两个字符,因为后缀的长度是恒定的。

代码语言:javascript
复制
function toNum(str) {
  return parseInt(str.substring(0, str.length - 2));
}

console.log(toNum("1st"));

票数 5
EN

Stack Overflow用户

发布于 2019-01-14 14:42:22

只需使用parseInt()从字符串中提取数值

代码语言:javascript
复制
parseInt("1st");

这将从字符串中提取1,即整数。

票数 0
EN

Stack Overflow用户

发布于 2019-01-14 14:56:55

您还可以将函数match(...)正则表达式 /[0-9]+/一起使用。

代码语言:javascript
复制
console.log("3rd".match(/[0-9]+/)[0]) // -> 3
console.log("52381st".match(/[0-9]+/)[0]) // -> 52381

只要执行"3rd".match(/[0-9]+/),就会返回一个带有一些有用数据的对象,但是仅仅访问属性[0]就会给出您想要的输出(如果您不想像其他答案提到的那样执行parseInt )。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54183094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档