Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

How can I test for an increasing or decreasing number pattern in a string? Assuming the string is just a number.

Ex:

var regexp = new RegExp(...) // something here
regexp.test("123456789") //true
regexp.test("121231234") //false
regexp.test("987654321") //true
regexp.test("5678901234") //true

The test would be for a cycle of digits really. How could this be achieved?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
324 views
Welcome To Ask or Share your Answers For Others

1 Answer

This mess of a regex is the best I can produce. It finds groups of ascending or descending numbers. You'd need to throw a starting and ending check on either end but, I didn't know what kind you want. For example you may want to have start line(^) and end line($) wrapped around this regex. It uses lookaheads which you may want to lookup if you are unfamiliar http://www.regular-expressions.info/lookaround.html.

(((?=01|12|23|34|45|56|67|78|89|90)d)+|((?=
09|98|87|76|65|4|43|32|21|10)d)+)d

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...