String Apex-从字符串中删除除''+&引用;

String Apex-从字符串中删除除''+&引用;,string,salesforce,apex,String,Salesforce,Apex,在Apex中,我想删除字符串中除“+”以外的所有特殊字符。这个字符串实际上是一个电话号码。我已经做了以下工作 String sampleText = '+44 597/58-31-30'; sampleText = sampleText.replaceAll('\\D',''); System.debug(sampleText); 所以,它打印的是44597583130。 但我想保持符号+的原样,它代表00 有人能帮我吗?可能的解决方案 String sam

在Apex中,我想删除字符串中除“+”以外的所有特殊字符。这个字符串实际上是一个电话号码。我已经做了以下工作

      String sampleText = '+44 597/58-31-30';
      sampleText = sampleText.replaceAll('\\D','');
      System.debug(sampleText);
所以,它打印的是44597583130。 但我想保持符号+的原样,它代表00

有人能帮我吗?

可能的解决方案

String sampleText='+44597/58-31-30';
//排除所有要保留的字符
调试(sampleText.replaceAll('[^\\+\\\d]','');
//明确列出必须替换的每个字符
调试(sampleText.replaceAll('/|-|','');
两种情况下的输出相同

|调试|+44597583130

|调试|+44597583130

编辑

String sampleText='+0032+497/+59-31-40';
调试(sampleText.replaceAll(“(?!^\\+)[^\\d],”);
|调试|+0032497593140


你好,帕维尔,谢谢你的回答。我们是否可以更改第一个,以确保+仅在字符串开头可用?所以+0032+497/+59-31-40变成+0032497593140?