如果我这样做:
var pageNum= 2;
nextLink = http://mydomain.com/?paged=1
nextLink = nextLink.replace(/\/?paged=[0-9]?/, 'paged='+ pageNum);
我明白了
nextLink = 'http://mydomain.com/?paged=2';
但如果我去:
var pageNum= 12;
nextLink = http://mydomain.com/?paged=10
nextLink = nextLink.replace(/\/?paged=[0-9]?/, 'paged='+ pageNum);
我明白了
netLink = 'http://mydomain.com/?paged=120';
当我想要的时候:
nextLink = 'http://mydomain.com/?paged=12';
那么,我如何使用两位数(11、12、13、14 等)并将其替换为 pageNum 变量(可以是一位数和两位数)。
谢谢!
最佳答案
有多种方法可以编写检查 2 位数字的正则表达式,每种方法都有自己的目标:
[0-9]+
表示1个或多个数字;
\d\d
表示恰好是 2 位数字,也适用于其他基数(如十六进制)的数字;
[1-9][0-9]
表示 10 到 99 之间的任何数字。
[1-9][0-9]?
表示 1 到 99 之间的任何数字。
最佳选择取决于您是否也需要支持三位数,以及是否需要支持第 0 页。如果您需要三位数,可以使用 Avinash 的解决方案。如果您只想要两位数,请使用 [1-9][0-9]。如果您同时想要个位数和两位数,请使用我的第 4 个解决方案。
关于javascript - 两位数的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24389576/