/etc/passwd 和 /etc/group 中的行的正则表达式
我一直在研究一个小的 Java 问题集,并遇到了一些麻烦。我在编写正则表达式方面不太有经验,并且确实可以使用两个来验证 Java 中 /etc/group 和 /etc/passwd 中的行条目。
我之前发现 /etc/passwd 中的行的正则表达式验证 并有尚未测试,但它看起来适合我的需要。其他人可以帮助为这两个文件提供正则表达式字符串吗?
我希望在将用户输入的密码和组行写入磁盘之前,用java验证它们。如果没有,我可能最终会对每个部分进行标记并运行各种昂贵的操作。
I've been working on a small Java problem set and have come across some trouble. I'm not very experienced writing regular expressions and could really use two for verifying line entries in /etc/group and /etc/passwd in Java.
I found Regex Verification of Line in /etc/passwd earlier and have yet to test it, but it looks adaptable for what I need. Could anyone else help in providing a regex string for either file?
I'm looking to verify user-entered passwd and group lines, in java, before writing them out to disk. If not, I'll likely end up tokenizing each piece and running various expensive operations.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可能应该只使用 读取文件,而不是编写正则表达式
Scanner
并使用String.split(":")
。然后您可以检查每个部分是否有效,而无需处理复杂的表达式来处理所有情况。编写代码可能会更容易,以后阅读也更容易。Rather than writing a regex you should probably just read the files with
Scanner
and parse each line withString.split(":")
. Then you can check that each part is valid without dealing with a complex expression to handle all cases. It'll probably be easier to write the code and easier to read it later.为什么要使用正则表达式?只需将冒号上的线分开并检查各个部分即可。
Why do you want to use regular expressions? Just split the line on the colons and inspect the pieces.