Ios 如何从swift中包含多个()的字符串中删除外部()

Ios 如何从swift中包含多个()的字符串中删除外部(),ios,swift,Ios,Swift,我有一个包含多个内部变量的字符串。我需要去掉绳子周围的绳子 myString=A-01:FLURO工程有限公司HIWIN 我想要这个: myString=A-01:FLURO工程有限公司HIWIN 我很难移除外部。请帮助如果您确定您将始终拥有作为字符串本身一部分的外部,您可以通过多种方式实现,其中一种方式是: var myString = "(A-01: FLURO ENGINEERING P LTD.(HIWIN))" myString = String(myString.dropFirst

我有一个包含多个内部变量的字符串。我需要去掉绳子周围的绳子

myString=A-01:FLURO工程有限公司HIWIN

我想要这个:

myString=A-01:FLURO工程有限公司HIWIN

我很难移除外部。请帮助

如果您确定您将始终拥有作为字符串本身一部分的外部,您可以通过多种方式实现,其中一种方式是:

var myString = "(A-01: FLURO ENGINEERING P LTD.(HIWIN))"

myString = String(myString.dropFirst())
myString = String(myString.dropLast())

print(myString)
打印出:

A-01:FLURO工程有限公司HIWIN

如果您不确定,但希望删除外部字符,以防它们都存在,您可以简单地作为一种解决方案,在删除第一个和最后一个字符之前,只需这样检查:

if myString.first == "(", myString.last == ")" {
    myString = String(myString.dropFirst())
    myString = String(myString.dropLast())
}

可以使用正则表达式来实现这一点

let string = myString.replacingOccurrences(of: #"^\((.*)\)$"#, 
                                           with: "$1", 
                                           options: .regularExpression)

看起来括号不在字符串中,而是在它周围,形成1元组。Swift的1元组与其中包含的值相同。所以,我不明白你的问题是什么。请出示你的代码。正如@user28434所指出的,括号很可能不是字符串的一部分。我们需要查看更大的上下文。@user28434-请查看现在是否有人知道如何操作它现在看起来非常不同:括号现在位于双引号内。这是一种廉价的改变吗?原始问题是否包含错误,现在已更正?这是错误的@DarkDust,它实际上生成abc def hi