Java正则表达式仅在开头或结尾保留*

标签 java regex

用户可以输入任何字符串字符,唯一允许的特殊字符是 *,它可以放置在字符串的开头或结尾。

例如:

*hello*     -> *hello
*h*ello     -> *hello
h*llo*      -> hello*
hello**     -> hello*
**hell**o** -> *hello

我喜欢使用正则表达式来执行此操作。

最佳答案

这个有点用

String s="*he**llo*";//anything
boolean st=(s.startsWith("*"));
boolean et=(s.endsWith("*"));
String ns=s.replaceAll("\\*+","");
ns=(st)?("*"+ns):(et)?(ns+"*"):ns;

关于Java正则表达式仅在开头或结尾保留*,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24979066/

相关文章:

php - 带属性的正则表达式

java - JTable 多个标题与换行符

java - 如何在调用方法时绕过java中的继承

c# - 允许字符输入的正则表达式检查

javascript - 使用正则表达式/javascript 提取最后一个单词

javascript - 正则表达式仅允许数字且最多 2 位数字

java - java中如何去掉单引号和双引号

java - 解码在打开的套接字上挂起

java - 将图像转换为 BufferedImage

java - 当之前的一些行在我自己的 Eclipse 编辑器中折叠时获取当前行