通过gpt返回的智能文案,当文案超长的时候,我们需要截取文案长度。
/**
* 截取长度已保证不超长
* @param tokens
* @param content
* @return
*/
public static String subStringContent(String tokens, String content) {
// 返回内容超长 截取
content = content.replaceAll("(\\r\\n|\\n|\\n\\r)","");
if (StringUtils.isNotEmpty(tokens) && NumberUtil.isNumber(tokens)){
do{
if (content.length()>Integer.parseInt(tokens) && content.contains("。")){
content = content.substring(0, content.lastIndexOf("。"));
}
}
while (content.length()>Integer.parseInt(tokens) && content.contains("。"));
}
String substring = content.trim().substring(content.length()-1);
if (StringUtils.endsWithAny(substring, new String[]{"。","!","?"})) {
return content;
} else {
content = content + "。";
}
return content;
}