草庐IT

Substring

全部标签

java - 在保留完整单词的同时在 Java 中修剪字符串

我需要在java中修剪一个字符串,以便:Thequickbrownfoxjumpsoverthelazdog.成为Thequickbrown...在上面的示例中,我将缩减为12个字符。如果我只使用子字符串,我会得到:Thequickbr...我已经有了使用子字符串执行此操作的方法,但我想知道执行此操作的最快(最有效)方法是什么,因为一个页面可能有许多修剪操作。我能想到的唯一方法是将字符串拆分为空格并将其放回原处,直到其长度超过给定长度。还有别的办法吗?也许是一种更有效的方法,我可以使用相同的方法进行“软”修剪,其中保留最后一个单词(如上例所示)和几乎是子字符串的硬修剪。谢谢,

c# - 如何使用 Regex 将十进制值中的句点转换为对 URL 更友好的新闻报道

我想弄清楚的是一种将小数点的句点转换为-point-以用于SEO目的的方法。我正在尝试使用Regex.Replace,例如:Regex.Replace(URLVariableString,"[\d][.][\d]","-point-")唯一的问题是它替换了左边和右边的数字。那么,这是否可以通过更好的Regex模式轻松完成,或者我是否必须创建一个子串搜索算法?答案是用VB还是C#对我来说并不重要,如果需要我可以随时转换代码。一个例子可以是这样的故事标题:“DollarTree以大约85亿美元的价格购买FamilyDollar”并将其转换为:“Dollar-Tree-to-buy-Fami

C++子串匹配实现

我有两个字符串,例如“hello”和“eo”,我希望在这两个字符串之间找到重复的字符,即本例中的“e”和“o”。我的算法会这样走voidfind_duplicate(char*str_1,char*str_2,intlen1,intlen2){charc;if(len10){str_1_new[kn]=str_1[k];kn++;}}kn=0;for(intk=0;k0){str_2_new[kn]=str_2[k];kn++;}}}else{//samehere,switchingroles(doityourself)}}我觉得我的解决方案很尴尬:-在第一个if/else和代码重复中

c++ - 在 C/C++ 中查找字符串中具有任意字符顺序的子字符串

假设我有一个字符串“abcdpqrs”,现在“dcb”可以算作上述字符串的子字符串,因为字符在一起。“pdq”也是上述字符串的一部分。但是“bcpq”不是。我希望你得到我想要的。有什么有效的方法可以做到这一点。我所能想到的就是借助哈希来做到这一点。但即使在O(n)程序中也需要很长时间,因为在许多情况下需要回溯。任何帮助将不胜感激。 最佳答案 这是一个O(n*alphabetsize)的解决方案:让我们维护一个数组count[a]=字符a在当前窗口出现了多少次[pos;pos+子串的长度-1]。窗口向右移动1(count[s[pos]

c++ - 如何以更少的开销管理字符串切片?

我在C++程序中处理巨大的(最多2GB)字符串及其切片。C风格的字符串在这种情况下似乎不可靠,但可以简单地切片(末尾没有'\0')。另一方面,据我所知,std::string::substr复制切片,因此我应该为每个索引执行至少一个额外的加法操作(索引+基数),以保持合理的内存使用。 最佳答案 最通用的解决方案是创建一个切片对象,使用您需要的界面,然后使用它。切片对象可以包含两个迭代器,开始和结束。 关于c++-如何以更少的开销管理字符串切片?,我们在StackOverflow上找到一个

c++ - 在另一个 vector <string> 中定位子 vector <string>

我有一个vectorv1={"A","B","C"}.我想检查v1是否为included在vectorv2={"X","Y","A","B","C","D"}.我可以使用STL确定一个集合是否是另一个集合的子集吗??vector不应排序如果只找到子集一次,算法将停止“if(counter==v1.size()){break;}”。如果子集重复两次,你认为我应该允许它继续搜索吗?#include#include#includeusingnamespacestd;floatwordOrder(std::vectorv1,std::vectorv2){//declareavectorthat

C++ 子串返回错误结果

我有这个字符串:std::stringdate="20121020";我在做:std::cout但是我得到:**Date:20121020Year:2012Month:1020Day:20请注意,月份应该是10,而不是1020。位置都对了,什么都试过了,还是失败了? 最佳答案 std::cout第二个论点是错误的。您正在指定“给我作为6个字符的子字符串,从位置4开始。”你可能想要:std::cout 关于C++子串返回错误结果,我们在StackOverflow上找到一个类似的问题:

c++ - 查找字符串中不存在的最小子字符串

我有一个仅包含数字0-9的字符串。字符串的长度可以介于1到1,000,000个字符之间。我需要在线性时间内找到字符串中不存在的最小数字。以下是一些示例:1023456789//Smallestnumbernotinstringis111023479//Smallestnumbernotinstringis5112131405678910//Smallestnumbernotinstringis15对于1,000,000的大小,我认为字符串中不存在的最小数字最多为6位数字。我的方法是生成从0到999,999的所有数字,并将它们全部插入一个vector(按顺序)。然后制作一张map,标记哪

ios - 区分 UILabel 的元数据时出现问题?

我正在获取当前在我的iOS应用程序中播放的广播流的元数据(艺术家姓名、轨道名称)。然而,这个元数据是一体的,即=“FRANKSINATRA-THEMEFROMNEWYORK,NEWYORK”。虽然这没关系,但如果我有2个不同样式的标签,一个写着“FRANKSINATRA”,而另一个写着“纽约主题,纽约”,那看起来会好得多。为此,我必须去掉连字符,_metaData=infoString;//THISISTHEOLD1-LABELFORDATAALLWAY//THISISTHECODEIAMIMPLEMENTINGTOGETRIDOFTHEHYPHENNSUIntegerxxx=[_me

objective-c - 删除特定字符前的子字符串 (NSString)

基本上,我在整个FacebookConnect中获得了一个用户城市。结果总是采用这种格式:澳大利亚悉尼但由于会有很多用户,因此城市和国家/地区可能会有所不同。这是格式:首先是带逗号的城市,然后是空格和国家/地区。我只想检索国家/地区名称。我是否可以在字符串中找到逗号,然后删除它后面的所有内容。然后我可以replaceOccurancesOfString:""删除空格。我看过其他关于此的问题,但它们使用不同的语言。我要的是Objective-C谢谢! 最佳答案 一个简单的方法是使用-(NSArray*)componentsSepara