Подсчет символов в строке с Windows CMD

Я бы использовал эту функцию для скорости:

def check_string(string, substring_list):
    for substring in substring_list:
        if substring in string:
            return True
    return False
0
задан Compo 19 March 2019 в 00:31
поделиться

2 ответа

При условии, что разделитель также не присутствует в строках в кавычках, следующий скрипт PowerShell
проверяет каждую строку в файле и использует Measure-Object для поддержания -Sum, -Average -Min -Макс и -Счетчик разделителей.

> Get-Content .\test.csv| ForEach-Object{(

При условии, что разделитель также не присутствует в строках в кавычках, следующий скрипт PowerShell
проверяет каждую строку в файле и использует Measure-Object для поддержания -Sum, -Average -Min -Макс и -Счетчик разделителей.

[110]

Если «Среднее», «Макс» и «Мин» равны, все строки имеют одинаковое количество столбцов.

Чтобы быть в теме, завернутый в пакетный файл:

:: Q:\Test\2019\03\19\SO_55231094.cmd
@Echo off&SetLocal EnableExtensions EnableDelayedExpansion
set "inputFile=.\test.csv"

:: clear var with prefix _
for /f "delims==" %%A in ('set _ 2^>nul') do set "%%A="

for /f "usebackq tokens=1,2 delims=: " %%A in (`
  powershell -nop -c "(Get-Content $ENV:inputFile)|ForEach-Object{(

При условии, что разделитель также не присутствует в строках в кавычках, следующий скрипт PowerShell
проверяет каждую строку в файле и использует Measure-Object для поддержания -Sum, -Average -Min -Макс и -Счетчик разделителей.

[110]

Если «Среднее», «Макс» и «Мин» равны, все строки имеют одинаковое количество столбцов.

Чтобы быть в теме, завернутый в пакетный файл:

[111]

Пример вывода

> Q:\Test\2019\03\19\SO_55231094.cmd
_Average=8
_Count=3
_Maximum=8
_Minimum=8
_Sum=24
-split '~').Count}|Measure-Object -Sum -Average -Minimum -Maximum" `) do if "%%B" neq "" Set "_%%A=%%B" Set _

Пример вывода

> Q:\Test\2019\03\19\SO_55231094.cmd
_Average=8
_Count=3
_Maximum=8
_Minimum=8
_Sum=24
-split '~').Count}|Measure-Object -Sum -Average -Minimum -Maximum Count : 3 Average : 8 Sum : 24 Maximum : 8 Minimum : 8 Property :

Если «Среднее», «Макс» и «Мин» равны, все строки имеют одинаковое количество столбцов.

Чтобы быть в теме, завернутый в пакетный файл:

:: Q:\Test\2019\03\19\SO_55231094.cmd
@Echo off&SetLocal EnableExtensions EnableDelayedExpansion
set "inputFile=.\test.csv"

:: clear var with prefix _
for /f "delims==" %%A in ('set _ 2^>nul') do set "%%A="

for /f "usebackq tokens=1,2 delims=: " %%A in (`
  powershell -nop -c "(Get-Content $ENV:inputFile)|ForEach-Object{(

При условии, что разделитель также не присутствует в строках в кавычках, следующий скрипт PowerShell
проверяет каждую строку в файле и использует Measure-Object для поддержания -Sum, -Average -Min -Макс и -Счетчик разделителей.

[110]

Если «Среднее», «Макс» и «Мин» равны, все строки имеют одинаковое количество столбцов.

Чтобы быть в теме, завернутый в пакетный файл:

[111]

Пример вывода

> Q:\Test\2019\03\19\SO_55231094.cmd
_Average=8
_Count=3
_Maximum=8
_Minimum=8
_Sum=24
-split '~').Count}|Measure-Object -Sum -Average -Minimum -Maximum" `) do if "%%B" neq "" Set "_%%A=%%B" Set _

Пример вывода

> Q:\Test\2019\03\19\SO_55231094.cmd
_Average=8
_Count=3
_Maximum=8
_Minimum=8
_Sum=24
0
ответ дан LotPings 19 March 2019 в 00:31
поделиться

Это достаточно просто с PowerShell. Код сравнивает длину исходной строки со строкой с удаленными символами TILDE.

Это можно запустить на любой современной машине с Windows, поддерживаемой cmd.exe. Да, намного проще и чище, если он написан как скрипт PowerShell.

@ECHO OFF
SET "inputFile=.\countds.csv"
powershell -NoLogo -NoProfile -Command ^
    "Get-Content -Path '%inputFile%' |" ^
        "ForEach-Object {" ^
            "$ns = 

Это достаточно просто с PowerShell. Код сравнивает длину исходной строки со строкой с удаленными символами TILDE.

Это можно запустить на любой современной машине с Windows, поддерживаемой cmd.exe. Да, намного проще и чище, если он написан как скрипт PowerShell.

[110] -replace '~','';" ^ "if ((

Это достаточно просто с PowerShell. Код сравнивает длину исходной строки со строкой с удаленными символами TILDE.

Это можно запустить на любой современной машине с Windows, поддерживаемой cmd.exe. Да, намного проще и чище, если он написан как скрипт PowerShell.

[110].Length - $ns.Length) -ne 7) {" ^ "'Length is {0}' -f (

Это достаточно просто с PowerShell. Код сравнивает длину исходной строки со строкой с удаленными символами TILDE.

Это можно запустить на любой современной машине с Windows, поддерживаемой cmd.exe. Да, намного проще и чище, если он написан как скрипт PowerShell.

[110].Length - $ns.Length)" ^ "}" ^ "}"
0
ответ дан lit 19 March 2019 в 00:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: