问题标签 [swift-string]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 如何在任何特殊字符之前添加额外的空格
如何在 Swift 中的字符串中的任何特殊字符之前添加额外的空格,例如,如果我有字符串
我们如何在 Swift 中解决和实现这一点
swift - 为什么使用 isEmpty 优于与空字符串文字的比较是 Swift?
String 类型是 Swift 有一个名为的属性isEmpty
,它指示字符串是否没有字符。
我想知道使用isEmpty
和检查与空字符串文字的相等性之间是否有任何区别。换句话说,有myString.isEmpty
什么比myString == ""
?
我做了一些研究,发现了以下建议:
- Apple 开发人员文档(以及Swift 语言指南)中的字符串结构参考建议使用
isEmpty
而不是检查字符串的长度:
要检查字符串是否为空,请使用其
isEmpty
属性而不是将其中一个视图的长度与0
. 与 isEmpty 不同,计算视图的 count 属性需要遍历字符串的元素。
Rob Napier 在 StackOverflow 上对与 2015 年略有不同的问题的回答如下:
空字符串是唯一的空字符串,因此不应出现
string.isEmpty()
不返回与string == ""
. 当然,他们可能会在不同的时间和记忆中这样做。它们是否使用不同的时间和内存量是未描述的实现细节,但isEmpty
它是检查 Swift 的首选方式(如文档所述)。一些博客文章还建议使用
isEmpty
特别是而不是检查字符串的长度是否为 0。
然而,这些来源都没有说反对与空文字进行比较。
myString.count == 0
由于明显的性能和可读性缺陷,避免诸如此类的结构似乎是完全合理的。我也知道它myString.isEmpty
比myString == ""
.
不过,我很好奇与空字符串文字的比较是否不好。它真的对内存或性能有任何影响吗?也许现在 Swift 编译器非常聪明,它会为myString.isEmpty
和生成相同的二进制代码myString == ""
?我的直觉是差异应该可以忽略不计甚至不存在,但我没有证据。
我意识到这不是一个真正的实际问题,但是如果有人可以分享一些见解,这两种替代方案如何在较低级别上工作以及是否存在任何差异,我将不胜感激。谢谢大家。
swift - 如果与正则表达式相比,为什么在更大的字符串中找不到我的搜索字符串?
我试图在另一个字符串中找到一个子字符串。我正在使用正则表达式。代码如下:
为什么找不到我的子字符串“Kingfisher:”。
swift - 在字符的变音符号变体之间转换
我将一个字符串作为参数传递给用 swift 编写的命令行工具。
我对某些包含变音符号的字符有疑问。
à á ả ã ạ й ё
如果我作为 line 参数传递,在我得到的应用程序内部à á ả ã ạ й ё
。它看起来一样,但它不是:
我知道 ASCII 中的变音符号字符可以用不同的方式表示:像单个字符,或者像两个字符的组合:一个字母和一个变音符号。
出于某种原因,命令行工具将第一个变体转换为第二个变体。可能那是因为它仅限于 UTF-8。
我怎样才能把它转换回来?喜欢将许多 unicode-scalars 字符连接成一个字符。
swift - 在 Swift 中将文本限制为一定数量的单词
在移动应用程序中,我使用的 API 只能处理大约 300 个单词。如何在 Swift 中修剪字符串以使其不包含更多单词?
本机.trimmingCharacters(in: CharacterSet)
似乎无法做到这一点,因为它旨在修剪某些字符。
python - 快速左右移动字符串循环
在 Hackerrank 我遇到了这个问题。我有一个接受 3 个参数的函数。示例 -->
左移:字符串的单次循环旋转,其中第一个字符变为最后一个字符,所有其他字符向左移动一个索引。例如,abcde 左移一次后变为 bcdea,左移两次后变为 cdeab。
Right Shift 字符串的单次循环旋转,其中最后一个字符成为第一个字符,所有其他字符都向右移动。例如,abcde 在一次右移后变为 eabcd,在两次右移后变为 deabc。
我在 python 中做了同样的问题并通过了所有的测试用例
现在我正试图迅速解决同样的问题。我在下面添加了我的解决方案
我是快速编程的新手,我无法解决这个问题。谁能帮我快速解决这个问题?
提前致谢。
swift - 用swift替换长字典中的字符
我想替换字典键中的一些字符。字典中有大约十万个键。使用下面的代码,这大约需要一个小时。我们可以通过更改编码来缩短这个时间吗?
例如:
swift - 使用 swift 查找任何语言的非字母单词
我有一些语言的多个字符串(英语、意大利语、阿拉伯语、法语......等)。我想查看该语言字母表以外的单词列表。
例如英语:
"thisŞĞstring" -> 返回 false
“正确的字符串格式”-> 返回 true
例如阿拉伯语:
"كلمةabc" -> 返回假
“كلمة” -> 返回真
我不想一一输入所有语言的字母表。有没有办法做我想做的事?