From b157f255bf78a4af721ab3e067411af2a881668b Mon Sep 17 00:00:00 2001 From: "rong.chen" <18649808198@163.com> Date: Thu, 7 Mar 2019 22:40:25 +0800 Subject: [PATCH] add an alphabet method --- .../java/ru/lanwen/verbalregex/VerbalExpression.java | 7 +++++++ .../verbalregex/PredefinedCharClassesTest.java | 12 ++++++++++++ 2 files changed, 19 insertions(+) diff --git a/src/main/java/ru/lanwen/verbalregex/VerbalExpression.java b/src/main/java/ru/lanwen/verbalregex/VerbalExpression.java index 3863055..26ba054 100644 --- a/src/main/java/ru/lanwen/verbalregex/VerbalExpression.java +++ b/src/main/java/ru/lanwen/verbalregex/VerbalExpression.java @@ -335,6 +335,13 @@ public Builder nonSpace() { return this.add("(?:\\S)"); } + /** + * Add alphabet character: [a-zA-Z] + * @return this builder + */ + public Builder alphabet() { + return this.add("(?:[a-zA-Z])"); + } /* --- / end of predefined character classes diff --git a/src/test/java/ru/lanwen/verbalregex/PredefinedCharClassesTest.java b/src/test/java/ru/lanwen/verbalregex/PredefinedCharClassesTest.java index 1a7eae8..094c0c7 100644 --- a/src/test/java/ru/lanwen/verbalregex/PredefinedCharClassesTest.java +++ b/src/test/java/ru/lanwen/verbalregex/PredefinedCharClassesTest.java @@ -20,6 +20,7 @@ public class PredefinedCharClassesTest { public static final String DIGITS = "0123456789"; public static final String NON_LETTERS = ";'[]{}|?/"; public static final String SPACE = " \t\n\f\r"; + public static final String LETTERS_ONLY_WORD = "q"; @Test public void testWordChar() throws Exception { @@ -97,4 +98,15 @@ public void testWord() throws Exception { regex.getText(LETTERS_NO_DIGITS + DIGITS + NON_LETTERS + SPACE), is(LETTERS_NO_DIGITS + DIGITS)); } + + @Test + public void testAlphabet() throws Exception { + VerbalExpression regex = regex().alphabet().build(); + + assertThat("matches on letters", regex, matchesTo((LETTERS_ONLY_WORD))); + assertThat("not matches on digit", regex, not(matchesTo(DIGITS))); + assertThat("Extracts wrong chars", + regex.getText(LETTERS_ONLY_WORD + DIGITS + NON_LETTERS + SPACE), equalTo(LETTERS_ONLY_WORD)); + + } }