我如何删除java中第一次和最后一次出现的句子

Jav*_*ons 0 java regex

我有一个以下行:|A|B|C|D|100|E|GEN|smsplus|11|11|11|我想删除第一次和最后一次出现|.

我必须首先检查是否|有可用的first and last

我相信这会给我带来一些投票,但真的不知道怎么回事.

编辑

我还必须检查以下内容:

A|B|C|D|100|E|GEN|smsplus|11|11|11| and |A|B|C|D|100|E|GEN|smsplus|11|11|11 and there is no 
Run Code Online (Sandbox Code Playgroud)

可能性||就是为什么我不想对此作出任何解释.

谢谢你宝贵的时间.

Jer*_*rry 6

您也许可以使用正则表达式:

^\\|(.*)\\|$
Run Code Online (Sandbox Code Playgroud)

并替换为$1:

ideone演示

如果字符串的开头和结尾都不是|,那么就没有替换.

编辑:根据你的上一条评论,如果你想删除|它在字符串的开头和/或结尾处,那么使用一个OR运算符(|我认为这个问题太多了我认为= P):

^\\||\\|$
Run Code Online (Sandbox Code Playgroud)

什么都不替换(空字符串"")


EDIT2:

如果第一个正则表达式更接近您的需要但又想删除多个管道,请添加量词:

^\\|+(.*)\\|+$
Run Code Online (Sandbox Code Playgroud)

如果第二个正则表达式(在第一次编辑中)是您需要的但又想要删除多个管道,请再次添加量词!

^\\|+|\\|+$
Run Code Online (Sandbox Code Playgroud)

请注意,替换字符串在两种情况下都保持不变