我們有一個字符串,其最大限制爲20個字。如果用戶輸入的內容超過20個單詞,則需要在第20個單詞處截斷字符串。我們如何自動化這個?我們可以用#GetToken(myString,20,'')#找到第20個標記,但不確定如何找到它的位置以便進行左修剪。有任何想法嗎? 在此先感謝。如何查找第n個標記的位置
4
A
回答
8
UDF ListLeft()應該做你想做的。它需要一個列表並用你定義的元素數返回列表。 「空格」作爲分隔符很好。
/**
* A Left() function for lists. Returns the n leftmost elements from the specified list.
*
* @param list List you want to return the n leftmost elements from.
* @param numElements Number of leftmost elements you want returned.
* @param delimiter Delimiter for the list. Default is the comma.
* @return Returns a string,
* @author Rob Brooks-Bilson ([email protected])
* @version 1, April 24, 2002
*/
function ListLeft(list, numElements){
var tempList="";
var i=0;
var delimiter=",";
if (ArrayLen(arguments) gt 2){
delimiter = arguments[3];
}
if (numElements gte ListLen(list, delimiter)){
return list;
}
for (i=1; i LTE numElements; i=i+1){
tempList=ListAppend(tempList, ListGetAt(list, i, delimiter), delimiter);
}
return tempList;
}
p.s. CFLIB.org是一個出色的資源,當我正在尋找這樣的東西時,通常是我的第一站。我高度推薦它。
0
也許你能避免修剪,而是從頭重建的結果,類似的信息(僞代碼,我不知道的ColdFusion):
result = ''
for (i = 0; i < 20; ++i)
{
result = result + GetToken(myString, i, ' ');
}
將這項工作?
0
不知道CF是否提供這種功能,但通常有一個LastIndexOf(字符串標記)方法。將其與子字符串函數結合使用。對於isntance(psuedocode):
string lastWord = GetToken(myString, 20, ' ');
string output = Substring(mystring, 0, LastIndexOf(mystring, lastWord)+StrLength(lastWord));
2
也可以使用正則表達式(組1包含匹配):^(?:\w+\s+){19}(\w+)
相關問題
- 1. 查找int中的第n個SET位
- 2. 查找位置與N個現有位置的萬里
- 3. 查找第K位數n變更
- 4. ActiveRecord查找 - 跳過記錄或獲取每第N個記錄
- 5. 在Excel中 - 從座標列表中查找第二個(或第n個)最近的位置
- 6. PHP查找第一個錨標記
- 7. 如何查找字符串中第五個空格的位置?
- 8. 如何查找字符串中第三個「_」的位置 - JavaScript
- 9. 如何用SQLite查找第N百分位數?
- 10. 如何找到一個ArrayList中的第n個指標
- 11. 如何找到divs具體的第N個兄弟姐妹的子div位置
- 12. 如何找到值的第n個根?
- 13. 查找n元素集的第k個分位數。 (來自cormen)
- 14. 查找質數的第n個
- 15. 查找nsindexset中的第n個條目
- 16. 在JSF樹中查找嵌套在a4j:repeat標記中的第n個組件
- 17. 如何找到一條記錄的第n個孩子在SQL查詢
- 18. 在記事本++中如何查找第n個字符串的出現
- 19. 如何選擇每第n個記錄?
- 20. 如何讓數據存儲區查詢的第n個記錄
- 21. 在第n個位置插入元素
- 22. 如何在鏈表中的第n個位置插入節點
- 23. 如何獲得bash中的第n個位置參數?
- 24. 在記事本++中,如何在一行中找到第n個「\」?
- 25. 查詢數據庫找到第N個記錄
- 26. 從行查找位置並用另一個表標記?
- 27. 如何找到第n個p元素?
- 28. 如何查找文件中的第n個字(Linux Shell)
- 29. 如何從用戶位置查找最近標記並顯示一個
- 30. 查找第n個fib數,在O(logn)