Questions tagged «string»

字符串是有限的符号序列,通常用于文本,尽管有时用于任意数据。

30
JavaScript中的endsWith
如何在JavaScript中检查字符串是否以特定字符结尾? 示例:我有一个字符串 var str = "mystring#"; 我想知道该字符串是否以结尾#。我该如何检查? endsWith()JavaScript中有方法吗? 我有一个解决方案是获取字符串的长度并获取最后一个字符并进行检查。 这是最好的方法还是还有其他方法?

7
普通英语的Ukkonen后缀树算法
在这一点上我感觉有点浓。我花了几天的时间试图完全围绕后缀树构造,但是由于我没有数学背景,因此许多解释都使我难以理解,因为它们开始过度使用数学符号系统。我发现的最接近很好的解释是带有后缀树的快速字符串搜索,但是他掩盖了各个要点,并且算法的某些方面仍不清楚。 我敢肯定,在堆栈溢出上对此算法的分步说明对我以外的其他许多人来说都是无价的。 作为参考,这里是有关算法的Ukkonen论文:http : //www.cs.helsinki.fi/u/ukkonen/SuffixT1withFigs.pdf 到目前为止,我的基本了解: 我需要遍历给定字符串T的每个前缀P 我需要遍历前缀P中的每个后缀S并将其添加到树中 要将后缀S添加到树中,我需要遍历S中的每个字符,其中的迭代包括沿着以S中相同的字符集C开头的现有分支以及当我将边缘拆分成后代节点时进行在后缀中找到一个不同的字符,或者如果没有匹配的边要走。当找不到匹配的边沿C向下走时,将为C创建新的叶边。 正如大多数解释中所指出的那样,基本算法似乎是O(n 2),因为我们需要逐步处理所有前缀,然后才需要逐步处理每个前缀的每个后缀。Ukkonen的算法显然是独特的,因为他使用了后缀指针技术,尽管我认为这是我难以理解的。 我也很难理解: 准确地分配,使用和更改“活动点”的时间和方式 该算法的规范化方面发生了什么 为什么我看到的实现需要“修复”他们使用的边界变量 这是完整的C#源代码。它不仅可以正常工作,而且支持自动规范化,并呈现输出的外观更好的文本图。源代码和示例输出位于: https://gist.github.com/2373868 更新2017-11-04 多年后,我发现后缀树有了新的用途,并在JavaScript中实现了该算法。要点在下面。它应该没有错误。npm install chalk从相同位置将其转储到js文件中,然后与node.js一起运行以查看一些彩色输出。在同一个Gist中有一个精简版,没有任何调试代码。 https://gist.github.com/axefrog/c347bf0f5e0723cbd09b1aaed6ec6fc6



13
C#中的多行字符串文字
有没有一种简单的方法可以在C#中创建多行字符串文字? 这是我现在所拥有的: string query = "SELECT foo, bar" + " FROM table" + " WHERE id = 42"; 我知道PHP有 <<<BLOCK BLOCK; C#是否有类似的东西?
1046 c#  string  shorthand 






24
如何将文本文件读入字符串变量并删除换行符?
我使用以下代码段在python中读取文件: with open ("data.txt", "r") as myfile: data=myfile.readlines() 输入文件为: LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE 当我打印数据时 ['LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN\n', 'GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE'] 如我所见,数据是list形式形式的。我如何使其成为字符串?而且我怎么删除"\n","["以及"]"从中字符?
960 python  string 



15
如何将UTF-8字节[]转换为字符串?
我有一个byte[]从恰好包含UTF-8的文件加载的数组。 在一些调试代码中,我需要将其转换为字符串。是否有一个班轮可以做到这一点? 在幕后,它应该只是一个分配和一个内存复制,因此即使未实现它也应该是可能的。

18
Java中toString()中的StringBuilder vs String串联
鉴于以下2种toString()实现方式,首选其中一种: public String toString(){ return "{a:"+ a + ", b:" + b + ", c: " + c +"}"; } 要么 public String toString(){ StringBuilder sb = new StringBuilder(100); return sb.append("{a:").append(a) .append(", b:").append(b) .append(", c:").append(c) .append("}") .toString(); } ? 更重要的是,假设我们只有3个属性,那么这可能没有什么不同,但是您将在什么时候从+concat 切换到 StringBuilder?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.