gpt4 book ai didi

ios - 检查 NSString 中的平衡括号时忽略表情符号

转载 作者:行者123 更新时间:2023-11-29 00:15:25 25 4
gpt4 key购买 nike

我需要检查匹配的括号是否存在于可能具有表情符号(如 :):()的字符串中。例如,"(:)())()""(abcd)()ghijk)((mnop)qert)"

我使用模式 "^[:\\(|:\\)]" 来检查表情符号和 "\\([^()]*\\) " 检查是否存在匹配的括号,但未检测到。我该怎么做?

最佳答案

解决这个问题的真正简单的方法是计算括号的数量,尝试用正则表达式解决它很困难,尽管扩展的正则表达式可以处理它。这是简单算法的草图:

  1. openParenthesisCount设置为0
  2. 迭代字符串:
    1. 如果当前字符是( 增加openParenthesisCount
    2. 如果当前字符是 ) 递减 openParenthesisCount,如果计数变为负则失败(太多关闭)
    3. 如果当前字符是 : 向前看并跳过下一个字符,如果它是括号(跳过表情符号)
  3. 如果 openParenthesisCount 为零 => 成功

HTH

关于ios - 检查 NSString 中的平衡括号时忽略表情符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45396062/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com