我目前正在使用C#开发一个应用程序,我需要在字符串中的某个字符后获取子字符串.
else if (txtPriceLimit.Text.Contains('.') && char.IsNumber(e.KeyChar))
{
int index = txtPriceLimit.Text.IndexOf('.');
string pennies = txtPriceLimit.Text.Substring(index, txtPriceLimit.Text.Length);
Console.WriteLine("Pennies: " + pennies);
}
Run Code Online (Sandbox Code Playgroud)
出于某种原因,它一直在想出一个IndexOutOfRangeException.如何从索引到结尾获取字符串的内容?
感谢您的任何帮助,您可以提供.
编辑: 刚刚发现我已经尝试的各种事情似乎确实有效,除了它没有从最后一个按钮获取值到文本字段.我正在使用KeyPress事件来执行此操作.
例如,如果我输入.123,它将只打印12.然后,如果我在末尾添加4,它将打印123
我正在尝试获取一个人的名字的第一个字母等于P的所有实例.
这就是我提出的,它不会返回任何东西:
$sql="SELECT * FROM people WHERE SUBSTRING(FirstName,0,1) = 'P'";
Run Code Online (Sandbox Code Playgroud)
建议?
在我的C++程序中,我有字符串
string s = "/usr/file.gz";
Run Code Online (Sandbox Code Playgroud)
在这里,如何使脚本检查.gz扩展(无论文件名是什么)并将其拆分为"/usr/file"?
我无法找到以下假设面试问题的答案:
给定两个长度为N的字符串序列,如何找到匹配子字符串的最大长度,而不管顺序如何.
例如,给定seq1 = "ABCDEFG",并且seq2 = "DBCAPFG",最大长度窗口是4.(ABCD来自seq1和DBCA来自seq2).
我必须使用C语言在字符串中找到子字符串的计数.我正在使用该功能,strstr但它只找到第一次出现.
我对算法的想法就像在字符串中搜索strstr而不返回null并在每个循环中对主字符串进行子串.我的问题是如何做到这一点?
根据wiki的最长公共子串问题可以使用后缀树来解决.
来自维基:
可以通过为字符串构建一个通用后缀树,然后找到最深的内部节点来找到一组字符串中最长的公共子字符串,这些节点具有来自其下面子树中所有字符串的叶节点
我不懂.
例如:如果我有:
ABCDE和XABCZ
然后后缀树是(一些分支从XABCZ由于空间中省略):
最长的常见子串ABC但是我不知道wiki的描述在这里有什么帮助.
ABC不是叶节点最深的内部节点.
任何帮助,以了解这是如何工作的?
代码
String s = "y z a a a b c c z";
Pattern p = Pattern.compile("(a )+(b )+(c *)c");
Matcher m = p.matcher(s);
while (m.find()) {
System.out.println(m.group());
}
Run Code Online (Sandbox Code Playgroud)
版画
a a a b c c
Run Code Online (Sandbox Code Playgroud)
哪个是对的.
但逻辑上,子串
a a a b c
a a b c c
a a b c
a b c c
a b c
Run Code Online (Sandbox Code Playgroud)
也匹配正则表达式.
那么,我怎样才能让代码找到那些子串呢,即不仅是最扩展的子串,还有它的子代码?
我尝试编写一种文化感知字符串替换方法:
public static string Replace(string text, string oldValue, string newValue)
{
int index = text.IndexOf(oldValue, StringComparison.CurrentCulture);
return index >= 0
? text.Substring(0, index) + newValue + text.Substring(index + oldValue.Length)
: text;
}
Run Code Online (Sandbox Code Playgroud)
但是,它在Unicode组合字符上窒息:
// \u0301 is Combining Acute Accent
Console.WriteLine(Replace("déf", "é", "o")); // 1. CORRECT: dof
Console.WriteLine(Replace("déf", "e\u0301", "o")); // 2. INCORRECT: do
Console.WriteLine(Replace("de\u0301f", "é", "o")); // 3. INCORRECT: do?f
Run Code Online (Sandbox Code Playgroud)
为了修复我的代码,我需要知道在第二个例子中,String.IndexOf只匹配一个字符(é),即使它搜索了两个(e\u0301).同样,我需要知道在第三个例子中,String.IndexOf匹配两个字符(e\u0301),即使它只搜索了一个(é).
如何确定匹配的子字符串的实际长度String.IndexOf?
注意:执行Unicode规范化text和 …
如果我们有一个庞大的字符串,命名str1,说500万个字符,然后str2 = str1.substr(5555, 100)让str2长100个字符,是的一个子str1起始于5555(或任何其他随机选择的位置).
JavaScript如何在str2内部存储?是复制字符串内容还是新字符串是虚拟的,只存储对原始字符串的引用以及位置和大小的值?
我知道这是依赖于实现的,ECMAScript标准(可能)没有定义字符串实现的内幕.但我想知道一些从内部了解V8或SpiderMonkey的专家,以澄清这一点.
谢谢
所以从字符串列表开始,如下所示
string_list = ['rest','休息','看','看','它','吐'
我想从列表中删除另一个元素的子字符串中的任何元素,例如给出结果...
string_list = ['休息','看','吐']
我有一些代码可以实现这一点,但它令人尴尬的丑陋,可能是不必要的复杂.有没有一种简单的方法在Python中执行此操作?