Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 正则表达式:字符出现的奇数_Regex - Fatal编程技术网

Regex 正则表达式:字符出现的奇数

Regex 正则表达式:字符出现的奇数,regex,Regex,在搜索中未找到与我的问题相关的任何内容: 我有一个字母表{a,b,c},在这里我需要生成一组具有奇数个a的字符串 有效:ababaccccc baacccc cabaac 无效:baac caacccb CAABBAAC 尝试: \b[bc]*a{3}[bc]*\b但这是非常有限的。下面的正则表达式 如果您需要不带正则表达式的解决方案,即Java: String arr[] = {"ababaccccc", "baaaccccc" , "caabaaac", "baac", "caacccb"

在搜索中未找到与我的问题相关的任何内容:

我有一个字母表{a,b,c},在这里我需要生成一组具有奇数个a的字符串

有效:ababaccccc baacccc cabaac

无效:baac caacccb CAABBAAC

尝试:

\b[bc]*a{3}[bc]*\b
但这是非常有限的。

下面的正则表达式


如果您需要不带正则表达式的解决方案,即Java:

String arr[] = {"ababaccccc",  "baaaccccc" , "caabaaac", "baac", "caacccb", "caabbbaac"};   

for (String string : arr) {
            int counter = 0;
            for (int i = 0; i < string.length(); i++) {
                if (string.charAt(i) == 'a') {
                    counter++;
                }
            }
            if ((counter & 1) == 0) {
                System.out.println(string + " is invalid");
            } else {
                System.out.println(string + " is valid");
            }
        }
String arr[]={“ababacccc”、“baaaccc”、“caabaac”、“baac”、“caacccb”、“caabbaac”};
for(字符串:arr){
int计数器=0;
对于(int i=0;i
这样做不是更容易吗

  • 在空白处拆分输入字符串
  • 计算每个元素中的“a”
  • 基于接受或拒绝计数的结果?

  • @Imray\b表示单词边界。为什么不使用名为valid的布尔变量,该变量以false开头,并在遇到字符“a”时更改状态:字符串arr[]={“ababacccc”、“baacccc”、“caabaac”、“baac”、“caacccb”、“caabbaac”};for(String-String:arr){bool-valid=false;for(int-i=0;iString arr[] = {"ababaccccc", "baaaccccc" , "caabaaac", "baac", "caacccb", "caabbbaac"}; for (String string : arr) { int counter = 0; for (int i = 0; i < string.length(); i++) { if (string.charAt(i) == 'a') { counter++; } } if ((counter & 1) == 0) { System.out.println(string + " is invalid"); } else { System.out.println(string + " is valid"); } }