- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在玩UVa #494我设法用下面的代码解决了这个问题:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
class Main {
public static void main(String[] args) throws IOException{
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String line;
while((line = in.readLine()) != null){
String words[] = line.split("[^a-zA-z]+");
int cnt = words.length;
// for some reason it is counting two words for 234234ddfdfd and words[0] is empty
if(cnt != 0 && words[0].isEmpty()) cnt--; // ugly fix, if has words and the first is empty, reduce one word
System.out.println(cnt);
}
System.exit(0);
}
}
我构建了正则表达式 "[^a-zA-z]+"
来分割单词,例如字符串 abc..abc
或 abc432abc
应拆分为 ["abc", "abc"]
。但是,当我尝试字符串 432abc
时,结果是 ["", "abc"]
- 来自 words[]
的第一个元素> 只是一个空字符串,但我期望只有 ["abc"]
。我不明白为什么这个正则表达式给我第一个元素作为本例的 ""
。
最佳答案
查看拆分引用页:split reference
Each element of separator defines a separate delimiter character. If two delimiters are adjacent, or a delimiter is found at the beginning or end of this instance, the corresponding array element contains Empty. The following table provides examples.
由于您有多个连续的分隔符,因此您将得到空数组元素
关于java - UVa #494 - 正则表达式 [^a-zA-z]+ 使用 Java 分割单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14079277/
我需要以下正则表达式,允许 [a-zA-Z]+ 或 [a-zA-Z]+[ \\-]{0,1}[a-zA-Z]+ 所以我想在 a-zA-Z 字符之间允许无限的减号和空格 示例: sdfsdfdsf-sf
我的电子邮件验证脚本中有以下代码。我想了解有关变量reg的更多信息,但不知道如何查找相关信息,因为我不知道其语法叫什么。有人可以引导我找到正确的资源或告诉我这种语法的名称吗? function val
我试图写一个正则表达式来匹配字符串形式: "[A-Za-z][A-Za-z]-[A-Za-z][A-Za-z]_[match all chars]" 我要匹配的字符串必须是这种形式,包括连字符和下划线
正则表达式 ^[A-Za-Z ][A-Za-z0-9 ]* 描述“第一个字母应该是字母表,其余字母可能是字母数字”。但是我怎么也允许特殊字符呢?当我输入“C#”时出现错误。 如何输入特殊字符且首字母应
^[a-zA-Z] 和 [^a-zA-Z] 有区别吗? 当我 checkin C# 时, Regex.IsMatch("t", "^[a-zA-Z]") // Returns true (I thi
我试图让我的 NSScanner 尝试扫描以下正则表达式:[a-zA-Z_][a-zA-Z0-9_]*,但遇到困难。 我可以尝试先读取 a-Z_,然后尝试附加 a-Z0-9_。 我想知道是否有更简单/
我希望能够在没有 Microsoft 语言扩展恶作剧的情况下编译我的 VS2017 C++ 项目。 根据此处的回复,/Za compiler directive does not compile sy
我需要一个满足以下规则的正则表达式: 长度必须介于8-32个字符之间 必须以字母开头 不得包含任何空格 不得包含任何特殊字符 我在google的帮助下尝试了自己的表达式,例如^([a-zA-Z][a-
我有这个用于电子邮件验证的正则表达式(假设只有 x@y.com、abc@defghi.org、something@anotherhting.edu 是有效的) /^[a-zA-Z0-9]+@[a-zA
我正在将 Entity Framework 与 PostgreSQL 结合使用。我需要编写一个遵循这种格式的查询: await Context.Database.ExecuteSqlCommandAs
这个问题已经有答案了: Reference - What does this regex mean? (1 个回答) 已关闭 3 年前。 我刚刚开始使用正则表达式,正在解决这个问题 question其
我正在学习正则表达式,目前看来我很困惑。 val.replace(/^[^a-zA-Z0-9]*|[^a-zA-Z0-9]*$/g, ''); 在上面的表达式中 1) 哪一部分表示不包含空格?因为我试
我正在尝试通过Vagrant Docker规定运行Docker容器: d.run "tomcat:8.0", args: "-it -d -p 8888:8888 --name tomcat8" Va
我知道正则表达式模式必须匹配以以下字符的组合和重复开头的字符串: a-z A-Z 一个空白字符 并且对字符串的结尾方式没有限制! 第一个案例 所以像 uoiui897868 这样的字符串(任何只以空格
如何删除字母而不是数字之间的空格 例如: 输入 I ES P 010 000 000 000 000 000 001 001 000 000 IESP 000 000 输出 IESP 010 000
我正在使用 来确保输入的值仅包含字母表,它工作正常,但不允许在字符串中占用空间。 如何在上述模式中加入空格字符? 提前致谢。 最佳答案 只需将空格添加到正则表达式。 如果您想要任何空格,而不仅仅是
我正在编写一个解决方案,用于扫描 iOS 南非驾驶执照背面的 PDF417 条形码 ( http://en.wikipedia.org/wiki/PDF417 )。我找不到任何有关如何解码条形码的文档
关闭。这个问题需要更多focused .它目前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题 editing this post . 6年前关闭。 Improve this questi
我有这个代码; $('[data-question=502] textarea').bind('input propertychange', function() { $(this).val
引用此讨论:Decode South African (ZA) Drivers License 请协助我尝试在 Android 上的 Java 中创建 PublicKey 实例时似乎遇到错误。我已粘贴
我是一名优秀的程序员,十分优秀!