字符串以指定符号分割

void MsgHandle::handleMsg(char* strMsg)
{
 char temp[512];
 strcpy(temp,strMsg);
 if (isValidMsg(temp))
 {
  ReplaceStr(temp,"|"," ");
  ReplaceStr(temp,"<","");
  ReplaceStr(temp,">","");
  sscanf(temp,"%d %s %s %s %s %s %s %s",&m_msgdata.MarkID,m_msgdata.ScrHost,m_msgdata.ScrDeviceType,m_msgdata.ScrDeviceNum,
   m_msgdata.DesHost,m_msgdata.DesDeviceType,m_msgdata.DesDeviceNum,m_msgdata.Command);
  //printf("hd<%d|%s|%s|%d|%s|%s|%d|%s>",m_msgdata.MarkID,m_msgdata.ScrHost,m_msgdata.ScrDeviceType,m_msgdata.ScrDeviceNum,
  //m_msgdata.DesHost,m_msgdata.DesDeviceType,m_msgdata.DesDeviceNum,m_msgdata.Command); 
 }
 else
 {
  printf("消息格式错误!\n");
 }
}

该代码的中使用的strMsg的格式:222|aaaa|kjijh|0000|等

### Java 中使用指定符号分割字符串 在 Java 中,`split` 方法是用于根据指定的分隔符将字符串拆分为子字符串的有效工具。此方法属于 `String` 类的一部分,并返回一个包含分割后的各个部分作为元素的数组。 对于简单的字符或一组预定义字符作为分隔符的情况,可以直接传递该字符给 `split` 函数[^1]: ```java public class SplitExample { public static void main(String[] args) { String sentence = "apple,banana,cherry"; String delimiter = ","; // 使用逗号作为分隔符来分割字符串 String[] fruits = sentence.split(delimiter); for (int i = 0; i < fruits.length; ++i){ System.out.println(fruits[i]); } } } ``` 当涉及到更复杂的模式时,比如多个可能的分隔符或是带有特殊含义的正则表达式的字符,则需确保正确转义这些字符或将它们放在方括号内形成字符集[^2]: ```java public class MultiDelimiterSplit { public static void main(String[] args) { String textWithMultipleDelimiters = "one.two|three*four/five"; // 定义多种分隔符:点、竖线、星号和斜杠 String delimiters = "[.|\\||*|/]"; // 利用正则表达式匹配任意上述分隔符并执行分割 String[] resultArray = textWithMultipleDelimiters.split(delimiters); for (String item : resultArray){ System.out.println(item); } } } ``` 值得注意的是,在某些情况下,如果想要保留空白位置(即连续两个分隔符之间没有任何字符),可以向 `split` 提供第二个参数 `-1` 来指示不限制结果数量[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值