我在这里要完成的是在单词结束后修剪字符串。但也试图保持高效,而不是使用x = ""
while not x.isdigit() or (100 > int(x) or int(x) > 999):
x = input("Input a 3 digit number")
x = int(x)
,因为一些String超过2k个字符。
StringArray.length
我的日志中的E代表空白空间
这里有一些日志返回的内容。
int len = 140;
String str = Html.fromHtml((cureent.getTextContent().replaceAll("\n",""))).toString();
char[] StringArray;
StringArray = str.toCharArray();
for(int Index=140;Index < 150;Index++) {
Log.d("Current Letter",String.valueOf(StringArray[Index]));
if (String.valueOf(StringArray[Index]).equals(" ")){
Log.d("Found E at" + String.valueOf(Index) ,"The Value is " + String.valueOf(StringArray[Index]));
}
item.setDescription(Html.fromHtml(cureent.getTextContent()).toString().replaceAll("\n", "").trim().substring(0,Index).replace((char) 65532, (char) 32).trim());
}
但我不能在这个词之后修剪它。我仍然会在中间修剪单词或者在
修剪它们的任何位置实施例。让我说我有这个字符串,我从我的rss。
因此,为了纪念antechinus的悲惨死亡,我们给你一小部分示例,我将使用14而不是140作为我的计数器,并且我将从0算起。 修剪它将返回给我:
&#34;所以,在hon&#34;
但无论何时都是这样。我希望它继续下去并在
修剪它&#34;所以,荣誉&#34;
希望我有所作为。答案 0 :(得分:1)
好的,试试这个:
import { map, filter, catchError, mergeMap } from 'rxjs/operators';
source.pipe(
map(x => x + x),
mergeMap(n => of(n + 1, n + 2).pipe(
filter(x => x % 1 == 0),
scan((acc, x) => acc + x, 0),
)),
catchError(err => of('error found')),
).subscribe(printResult);
答案 1 :(得分:0)
或者你可以这样做:
private String truncateTextMaxLength(String text, int maxLength){
String result = text;
int len = text.length();
if(len < maxLength){
return result;
}
int i = text.lastIndexOf(0, maxLength);
result = text.substring(0, i);
return result;
}
现在你可以这样打电话:
String s = truncateTextMaxLength(myText, 150);
。 请注意,对于其他代码,可能存在没有&#34; &#34;在第140和第150个角色之间。