如果一个字符串在开头的和结尾处有一个星号,我正在尝试弄清楚。
例如:*italic*
。
我正在制作降价编辑器,而且我对REGEX很新。我知道^
表示字符串的开头,而$
表示结束,我只是不知道如何实现。
答案 0 :(得分:4)
试试这个
^\*.*\*$
从星号开始,包含零个或多个(几乎)任何东西(包括星号),以星号结尾
或者,如果您需要多线支持......这将有效。
^\*[\s\S]*\*$
\s
将匹配包含换行符的任何空格,\S
匹配非空格字符。
如果您不希望*
位于中间,您可以执行以下操作:
^\*[^*]*\*$
如果您只想在*bold*
,*italic*
等星号中使用单个字词,那么您可以执行以下操作:
^\*\w*\*$
我想我已经涵盖了您可能需要的所有内容,如果情况不是这样,请告诉我。
答案 1 :(得分:2)
您也可以使用String#charAt()
。
假设JavaScript:
var str = "*italics*";
alert(str.charAt(0) === '*' &&
str.charAt(str.length - 1) === '*'); // true
假设Java:
String str = "*italics*";
System.out.println(str.charAt(0) == '*' &&
str.charAt(str.length() - 1) == '*'); // true