Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Вытащить все переменные из файлы Добавлено: 29.12.08 09:35  

Автор вопроса:  DaaGER | Web-сайт: smartic.ru | ICQ: 329195567 
Есть файл, надо из него как-то вытащить все перменные вида "$****", в ручную очень долго, может кто подскажет, как?

Ответить

  Ответы Всего ответов: 15  

Номер ответа: 1
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #1
Добавлено: 29.12.08 17:24
Регулярные выражения рулят =) Либо есть оператор LIKE

Ответить

Номер ответа: 2
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #2 Добавлено: 29.12.08 17:31
Неясна структура файла. Может тебе нужно через 'Input #filenumber, varlist', может через загрузку файла и Split по '$', черт его знает. Вопрос несколько хромой. Поясни что за чудо-файл такой.

Ответить

Номер ответа: 3
Автор ответа:
 DaaGER



ICQ: 329195567 

Вопросов: 52
Ответов: 67
 Web-сайт: smartic.ru
 Профиль | | #3
Добавлено: 29.12.08 22:14
Извиняюсь...
Есть php файл,в нем полно кода.
Нужно выудить все переменные,например $post,$user_name и т.д.
В ручную долго,ибо файлов много,а строчек кода ещё больше...

Ответить

Номер ответа: 4
Автор ответа:
 Cooller



Вопросов: 11
Ответов: 32
 Профиль | | #4 Добавлено: 30.12.08 00:04
нужны конечные значения переменных или только их имя?
Если 2) то...
input "random.php" for input as #1
input #1, a$
close #1
и ищешь MID`ом в a$ символ "$" и после него до "=","," или chr$(13)
а если 1)
то после 2) ищешь присвоение....

Ответить

Номер ответа: 5
Автор ответа:
 DaaGER



ICQ: 329195567 

Вопросов: 52
Ответов: 67
 Web-сайт: smartic.ru
 Профиль | | #5
Добавлено: 31.12.08 21:30
Например:
  1. $ctitletmp=$ctitle;
  2.              @$tmpquestion .= "<tr><td align=\"center\"><img src=\"includes/images/help.gif\" title=\"\" alt=\"\"></td><td width=\"100%\"><a href=\"#$ffqid\" title=\"$fquestion\">".$fquestion."</a></td></tr>";
  3.              $tmp .= "<tr><td align=\"center\"><img src=\"includes/images/info.gif\" title=\"\" alt=\"\"></td><td width=\"100%\"><b><a name=\"$ffqid\"></a>".$fquestion."</b></td></tr>";
  4.              $tmp .= "<tr><td colspan=\"2\" style=\"padding-left: 23px;\">".bb_decode($fanswer)."<br><br><br></td></tr>";


Нужно вывести:
$ctitletmp
$ctitle
$tmpquestion
$ffqid
$fquestion
$fquestion
$ffqid
$fquestion
$tmp
$fanswer

Ответить

Номер ответа: 6
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #6 Добавлено: 31.12.08 22:39
ну и в чем проблема? Регулярные выражения тебе в руки и вперед.. делов на 5 минут

Ответить

Номер ответа: 7
Автор ответа:
 DaaGER



ICQ: 329195567 

Вопросов: 52
Ответов: 67
 Web-сайт: smartic.ru
 Профиль | | #7
Добавлено: 31.12.08 23:03
вот нашел код:
  1. Dim ОдинСимвол As String
  2. Dim Предложение As String
  3. Dim КолЗнакВПредлож As Integer
  4. Dim Счётчик As Integer
  5. Dim НачалоСлова As Integer
  6. Dim КонецСлова As Integer
  7. Dim Слово As String
  8. Dim ВсеСлова As String
  9.  
  10. Open "c: xt.txt" For Input As #1 'путь к файлу и его имя можно указать свои
  11. Do While Not EOF(1) ' Цикл до конца файла.
  12. ОдинСимвол = Input(1, #1)
  13. Предложение = Предложение + ОдинСимвол
  14. If ОдинСимвол = "." Then ' В конце предложения обязательно должна быть точка
  15. КолЗнакВПредлож = Len(Предложение) - 1
  16. If КолЗнакВПредлож <> 0 Then
  17. Do
  18. Счётчик = Счётчик + 1
  19. ОдинСимвол = Mid(Предложение, Счётчик, 1)
  20. If ОдинСимвол = "" Then Exit Do
  21. Select Case ОдинСимвол
  22. Case "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "-", "/", "*", "=" 'Можно добавить ещё что-нибудь или убрать не нужное
  23. НачалоСлова = Счётчик
  24. Do 'Поиск начала слова
  25. НачалоСлова = НачалоСлова - 1
  26. If НачалоСлова = 0 Then
  27. НачалоСлова = 1
  28. Exit Do
  29. Else
  30. If Mid(Предложение, НачалоСлова, 1) = " " Or _
  31. Mid(Предложение, НачалоСлова, 1) = "" Or _
  32. Mid(Предложение, НачалоСлова, 1) = Chr(10) Or _
  33. Mid(Предложение, НачалоСлова, 1) = Chr(13) Then
  34. НачалоСлова = НачалоСлова + 1
  35. Exit Do
  36. End If
  37. End If
  38. Loop
  39. КонецСлова = Счётчик
  40. Do 'Поиск конца слова
  41. КонецСлова = КонецСлова + 1
  42. If Mid(Предложение, КонецСлова, 1) = " " Or _
  43. Mid(Предложение, КонецСлова, 1) = "" Or _
  44. Mid(Предложение, КонецСлова, 1) = "." Or _
  45. Mid(Предложение, КонецСлова, 1) = Chr(10) Or _
  46. Mid(Предложение, КонецСлова, 1) = Chr(13) Then
  47. Exit Do
  48. End If
  49. Loop
  50. Слово = Mid(Предложение, НачалоСлова, КонецСлова - НачалоСлова) ' само слово
  51. If Слово <> "" And Len(Слово) > 1 Then
  52. ВсеСлова = ВсеСлова + Слово + Chr(13) + Chr(10) 'запись найденных слов в переменную
  53. End If
  54. End Select
  55. Loop
  56. End If
  57. Предложение = ""
  58. Счётчик = 0
  59. End If
  60. Loop
  61. Close #1
  62. Open "c:Слова.txt" For Output As #1
  63. Print #1, ВсеСлова 'запись найденных слов в файл
  64. Close #1

но как не правил всё равно не то получается.

Ответить

Номер ответа: 8
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #8 Добавлено: 31.12.08 23:05
неее.. ф топку этот код! ))) Перебирать по 1 символу - это извращение!

Ответить

Номер ответа: 9
Автор ответа:
 DaaGER



ICQ: 329195567 

Вопросов: 52
Ответов: 67
 Web-сайт: smartic.ru
 Профиль | | #9
Добавлено: 31.12.08 23:11
сейчас сижу читаю про регулярные выражения, но как-то не совсем понимаю... VB надо уже конкретнее извучать походу...
Ты же сказал, что это дело 5 минут, сделай мне новогодний подарок пожалуйста=)

Просто ест CMS'ка в её файлах есть достаточно большое количество переменных и хотим создать подобие справочника для начинающих пользователей, чтобы знали что за переменная , что значит и что надо править, чтобюы получить то что им нужно.

Ответить

Номер ответа: 10
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #10 Добавлено: 31.12.08 23:18
сделай мне новогодний подарок пожалуйста

да не вопрос, запросто! А ты C# осилишь? а то у меня VB нету под рукой..

Ответить

Номер ответа: 11
Автор ответа:
 DaaGER



ICQ: 329195567 

Вопросов: 52
Ответов: 67
 Web-сайт: smartic.ru
 Профиль | | #11
Добавлено: 31.12.08 23:19
не буду греха таить, к сожаленью не осилю...

Ответить

Номер ответа: 12
Автор ответа:
 DaaGER



ICQ: 329195567 

Вопросов: 52
Ответов: 67
 Web-сайт: smartic.ru
 Профиль | | #12
Добавлено: 31.12.08 23:22
а можно те в аську стукануть?

Ответить

Номер ответа: 13
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #13 Добавлено: 31.12.08 23:23
стучи

Ответить

Номер ответа: 14
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #14
Добавлено: 01.01.09 22:36
DaaGER пишет:
VB надо уже конкретнее извучать походу...

Не надо! Ни в коем случае! Учи уж что-то более продвинутое.

Ответить

Номер ответа: 15
Автор ответа:
 Winand



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #15
Добавлено: 03.01.09 19:24
В regexp самая проблема - это составить само выражение) а дальше уже удобно становится

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам