|
|
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
Прошу помощи. Есть две строки |||240||30030|140|| |||241|60000|70000|240|| Функция GetWordCount для них возвращает разное количество слов, хотя я наивный считал сто их одинаково должно быть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 15:16 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
.... ведь число разделителей равно. GetWordCount(...., "|") Соответственно после такого у меня проблема с применением GetWordNum.... Как можно обойти? Пока ищу, может кто подскажет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 15:18 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
Попробуй OCCURS("|", ...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 15:26 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
GetWordCount() считает непустые слова. Если нужно количество разделителей, то лучше использовать Occurs(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 15:27 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
Да, но мне надо считать 5, 6 слово, а оно может плавать по номеру. Может заменой "||" на "|-|" можно разрулить... Только я не увидел пока в фоксе что-то типа replace(cString, cStrToReplace, cReplaceStr)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 15:30 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
? STRTRAN('|||240||30030|140||','|','|-') ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 15:37 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
avdjДа, но мне надо считать 5, 6 слово, а оно может плавать по номеру. Может заменой "||" на "|-|" можно разрулить... Только я не увидел пока в фоксе что-то типа replace(cString, cStrToReplace, cReplaceStr)... strtran('....', '||', '|-|') Я самодельной функцией для таких целей пользуюсь: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 15:38 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 15:43 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
если у Вас 9-я версия фокспро, то используйте альтернативный и родной способ Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 15:59 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
Dima T avdjДа, но мне надо считать 5, 6 слово, а оно может плавать по номеру. Может заменой "||" на "|-|" можно разрулить... Только я не увидел пока в фоксе что-то типа replace(cString, cStrToReplace, cReplaceStr)... strtran('....', '||', '|-|') Я самодельной функцией для таких целей пользуюсь: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. То что надо!!!! Спасибо. Вопрос решен! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 16:05 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
2 avdj если у Вас 9-ка - обратите внимание на мой топик - и не шаманьте на пустом месте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 16:13 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
прошелмимо2 avdj если у Вас 9-ка - обратите внимание на мой топик - и не шаманьте на пустом месте VFP7 тож рулит с ALINES() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 16:27 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
2 AleksMed ну Вы попробуйте с параметрами, как я показал и с несколькими разделителями и хелпы сравните ... рулит, да несколько не так как нужно ... на 7-ке повтори Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 16:50 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
порули до 9-ки Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 16:53 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
прошелмимо2 AleksMed ну Вы попробуйте с параметрами, как я показал и с несколькими разделителями и хелпы сравните ... рулит, да несколько не так как нужно ... на 7-ке повтори Код: plaintext 1. Сань, по тестам на предоставленных строках, возвращает по 8 слов. Повторить lnElements = alines(lArr,lcStr,8,',','[',']') на 7-ке нельзя, там другое число параметров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 17:20 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
автортам другое число параметров автор Новый синтаксис функции ALINES( ) расширяет возможности выборки и обработки больших символных массивов, например анализ чувствительности к Регистру данных (case-insensitive), или обработка пустых элементов массива. Данные дополнительные возможности обеспечиваются новым параметром функции nFlags, который заменяет третий параметр lTrim. См. дополнительно раздел ALINES( ), Функция в 9-й версии функция alines расширена, программисты получили возможность быстро и просто обрабатывать большие объемы инф-и вот поэтому я и толковал про 9-ку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 17:29 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
авторСань, по тестам на предоставленных строках, возвращает по 8 слов не пугай, а то мне голову оторвут ... все там правильно обраб-ся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 17:33 |
|
||
|
Как считает слова GetWordNum
|
|||
|---|---|---|---|
|
#18+
AleksMed прошелмимона 7-ке повтори Код: plaintext 1. Сань, по тестам на предоставленных строках, возвращает по 8 слов. Повторить lnElements = alines(lArr,lcStr,8,',','[',']') на 7-ке нельзя, там другое число параметров. Как раз в 7 уже можно. Отличия от 9 только в значении 3 параметра. В 7 он принимает значение только .T./.F. и эквивалентен значению 1 или 0 в 9. Т.е. контролирует факт отсечения ведущих и концевых пробелов в "словах". А количество "границ" также может быть произвольным. Т.е. достаточно просто число 8 заменить на .F. и будет то же самое, поскольку чуствительность к регистру для скобок и запятой роли не играет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2007, 17:34 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34902588&tid=1588604]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
145ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 455ms |

| 0 / 0 |
