배치에서 구분 기호로 파일의 새 줄로 문자열 분할

Brenton

일괄 적으로 구분 기호를 기반으로 문자열을 하위 문자열로 분할하려고합니다.

이 예제는 작동하지만 더 나은 방법이 있습니다.

for /f "tokens=1-20 delims=:" %%a in (string.txt) do (
echo %%a& echo.%%b& echo.%%c& echo.%%d& echo.%%e& echo.%%f& echo.%%g& echo.%%h& echo.%%i& echo.%%j
echo.%%k& echo.%%l& echo.%%m& echo.%%n& echo.%%o& echo.%%p& echo.%%q& echo.%%r& echo.%%s& echo.%%t
) >substrings.txt

기본 구분 기호로 작동하지만 콜론을 사용하여 실패하는 Magoo 에서이 코드시도 했습니다 .

@echo off
setLocal 
for /f "delims=:" %%a in (string.txt) do (
for %%i in (%%a) do echo %%i >>substrings.txt
)

나는 또한 Aacini 에서이 코드 를 시도했지만 특수 문자를 사용하여 실패한 것 같습니다.

@echo off
setlocal EnableDelayedExpansion

set i=1
set "x=%string%"
set "x!i!=%x::=" & set /A i+=1 & set "x!i!=%"
set x >substrings.txt

% string % var 또는 string.txt의 예는 다음과 같습니다.

Select project:/option:report name="Sustainability":option value="201":Huonville:/option:/report:report name="Energy and Water Management":option value="102":Cygnet:/option:/report:report name="Tree Management":option value="101":Cygnet:/option:/report:option disabled="disabled":/option:/select

다음과 같이 % string % var 또는 string.txt를 substring.txt에 출력하려고합니다.

Select project
/option
report name="Sustainability"
option value="201"
Huonville
/option
/report
report name="Energy and Water Management"
option value="102"
Cygnet
/option
/report
report name="Tree Management"
option value="101"
Cygnet
/option
/report
option disabled="disabled"
/option
/select

어떤 도움이라도 대단히 감사하겠습니다. 감사

스테판

를 사용할 때 for /f얼마나 많은 토큰이 있는지 알아야합니다 (최대 토큰에 대한 제한이 있음).

일반 for루프 가 필요 하지만 사용할 구분 기호를 선택할 수 없습니다.

따라서 모든 구분 기호를 공백으로 바꿉니다. 원래 공간을 처리하기 위해 각 "토큰"을 따옴표로 묶어야합니다. 이렇게하려면 전체 문자열을 따옴표로 묶고 delimter :" "다음으로 바꿉니다 .

@echo off
setlocal enabledelayedexpansion
set "string=Select project:/option:report name="Sustainability":option value="201":Huonville:/option:/report:report name="Energy and Water Management":option value="102":Cygnet:/option:/report:report name="Tree Management":option value="101":Cygnet:/option:/report:option disabled="disabled":/option:/select""

set "string=%string: =@%"
set "string="%string::=" "%"
(for %%a in (%string%) do (
  set "out=%%~a"  
  echo !out:@= !
))>out.txt
echo take a look at the modified string:
echo %string%
echo/
type out.txt

다른 접근 방식 (학업 적 이유) :

 @echo off
setlocal 
set "string=Select project:/option:report name="Sustainability":option value="201":Huonville:/option:/report:report name="Energy and Water Management":option value="102":Cygnet:/option:/report:report name="Tree Management":option value="101":Cygnet:/option:/report:option disabled="disabled":/option:/select"

call :recur %string%
goto :eof

:recur
rem echo loop with %*
for /f "tokens=1,* delims=:" %%a in ("%*") do ( 
  echo %%a
  if not "%%~b" == "" call :recur %%b
  goto :eof
)
echo.

참고 : 재귀 제한이 있습니다 (스택 크기로 인해). 주어진 문자열에서 작동하지만 문자열에 "토큰"이 더 포함되어 있으면 실패 할 수 있습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Pandas : 구분 기호에서 열을 n 개의 새 열로 분할

분류에서Dev

/ bin / sh에서 새 줄로 구분 된 문자열을 분할하는 방법

분류에서Dev

문자열의 구분 기호로 Windows 배치 문자열

분류에서Dev

Windows 배치 파일-구분 기호로 특정 문자 또는 공백이있는 분할 문자열

분류에서Dev

파이썬에서 여러 구분 기호로 문자열 분할

분류에서Dev

TCL에서 파일의 각 줄을 새 파일로 분할

분류에서Dev

bash에서 일부 구분 기호로 문자열을 분할합니까?

분류에서Dev

파일에서 줄 단위로 perl 분할 구분 기호

분류에서Dev

한 줄을 여러 줄로 분할, 입력 파일의 모든 줄에 대해 새 줄 문자 누락

분류에서Dev

Groovy에서 다른 줄 구분 기호로 문자열 분할 및 결합

분류에서Dev

분할에 사용 된 동일한 구분 기호로 문자열 결합

분류에서Dev

줄 바꿈으로 구분 된 파이썬의 문자열 파일을 json 배열로 구문 분석

분류에서Dev

Bash에서 여러 문자 구분 기호로 분할 된 문자열의 특정 부분 제거

분류에서Dev

Bash에서 여러 구분 기호로 문자열 분할

분류에서Dev

구분 기호로 문자열 분할

분류에서Dev

구분 기호로 문자열 분할

분류에서Dev

구분 기호로 문자열 분할

분류에서Dev

여러 구분 기호로 파이썬 문자열 분할

분류에서Dev

여러 구분 기호로 정의 된 문자열 부분을 R에서 여러 변수로 분할

분류에서Dev

특정 구분 기호로 CSV 파일의 열 분할

분류에서Dev

여러 구분 기호로 문자열을 분할하고 일부 구분 기호는 유지하면서 다른 구분 기호는 버립니다.

분류에서Dev

2 개의 구분 기호를 기준으로 문자열을 2 개의 배열로 분할

분류에서Dev

새 줄, PHP로 텍스트 파일에서 연결 문자열 분해

분류에서Dev

.yml 파일에서 문자열을 두 줄로 분할

분류에서Dev

새 줄 또는 공백에서 배열로 분할하는 Javascript 분할 기능

분류에서Dev

새 줄 또는 공백에서 배열로 분할하는 Javascript 분할 기능

분류에서Dev

구분 기호가 n 번째 발생하는 문자열을 자바 스크립트의 배열로 분할

분류에서Dev

구분 기호가 n 번째 발생하는 문자열을 자바 스크립트의 배열로 분할

분류에서Dev

파이썬에서 구분 기호 '\'에서 문자열 분할

Related 관련 기사

  1. 1

    Pandas : 구분 기호에서 열을 n 개의 새 열로 분할

  2. 2

    / bin / sh에서 새 줄로 구분 된 문자열을 분할하는 방법

  3. 3

    문자열의 구분 기호로 Windows 배치 문자열

  4. 4

    Windows 배치 파일-구분 기호로 특정 문자 또는 공백이있는 분할 문자열

  5. 5

    파이썬에서 여러 구분 기호로 문자열 분할

  6. 6

    TCL에서 파일의 각 줄을 새 파일로 분할

  7. 7

    bash에서 일부 구분 기호로 문자열을 분할합니까?

  8. 8

    파일에서 줄 단위로 perl 분할 구분 기호

  9. 9

    한 줄을 여러 줄로 분할, 입력 파일의 모든 줄에 대해 새 줄 문자 누락

  10. 10

    Groovy에서 다른 줄 구분 기호로 문자열 분할 및 결합

  11. 11

    분할에 사용 된 동일한 구분 기호로 문자열 결합

  12. 12

    줄 바꿈으로 구분 된 파이썬의 문자열 파일을 json 배열로 구문 분석

  13. 13

    Bash에서 여러 문자 구분 기호로 분할 된 문자열의 특정 부분 제거

  14. 14

    Bash에서 여러 구분 기호로 문자열 분할

  15. 15

    구분 기호로 문자열 분할

  16. 16

    구분 기호로 문자열 분할

  17. 17

    구분 기호로 문자열 분할

  18. 18

    여러 구분 기호로 파이썬 문자열 분할

  19. 19

    여러 구분 기호로 정의 된 문자열 부분을 R에서 여러 변수로 분할

  20. 20

    특정 구분 기호로 CSV 파일의 열 분할

  21. 21

    여러 구분 기호로 문자열을 분할하고 일부 구분 기호는 유지하면서 다른 구분 기호는 버립니다.

  22. 22

    2 개의 구분 기호를 기준으로 문자열을 2 개의 배열로 분할

  23. 23

    새 줄, PHP로 텍스트 파일에서 연결 문자열 분해

  24. 24

    .yml 파일에서 문자열을 두 줄로 분할

  25. 25

    새 줄 또는 공백에서 배열로 분할하는 Javascript 분할 기능

  26. 26

    새 줄 또는 공백에서 배열로 분할하는 Javascript 분할 기능

  27. 27

    구분 기호가 n 번째 발생하는 문자열을 자바 스크립트의 배열로 분할

  28. 28

    구분 기호가 n 번째 발생하는 문자열을 자바 스크립트의 배열로 분할

  29. 29

    파이썬에서 구분 기호 '\'에서 문자열 분할

뜨겁다태그

보관