문자열을 특수 문자에서 특수 문자가 아닌 문자로 변환

최대 두피

파이썬 2.7을 사용하고 있습니다. 아래와 같이 이름 변수에 지정된 문자열이있는 경우

name = "Test with-name and_underscore"

이것을 이름 변수에 할당 할 수있는 문자열로 어떻게 변환 할 수 있습니까?

name = "TestWithNameAndUnderscore"

정규 표현식이 갈 길이입니까 아니면 파이썬이 그것을 수행하는 내장 함수를 가지고 있습니까 ....

그래서 내가 찾고있는 것은 문자열이 밑줄이나 대시 또는 공백 또는 특수 문자와 함께 들어올 때 동일한 것으로 변환되지만 밑줄 / 대시 / 공백 / 특수 문자 및 해당 단어의 초기 문자는 없습니다. "test name-is this_here"에서 "TestNameIsThisHere"와 같이 대문자로 시작합니다.

그리고 공백이 없거나 특수 문자가 없으면 아무것도하지 마십시오. 따라서 문자열이 "Helloworld"이면 건너 뛰고 계속 진행합니다.

내가이 작업을 수행하는 이유는 python boto를 사용하여 AWS 용으로 무언가를 작성하고 있으며 리소스를 호출 할 수있는 이름에 제한이 있기 때문입니다. 영숫자가 아니어야합니다.

패트릭 모핀
>>> import re
>>> name = "Test with-name and_underscore"
>>> print(''.join(x.capitalize() for x in re.compile(r'[^a-zA-Z0-9]').split(name)))
TestWithNameAndUnderscore

필요한 경우 선행 숫자도 제거 할 수 있습니다. 다음은이를 수행하고 결과 문자열이 비어 있지 않은지 확인하는 약간 더 강력한 예제입니다.

>>> import re
>>> def fix_id(s, split=re.compile('[^a-zA-Z0-9]+|^[0-9]+').split):
...     result = ''.join(x.capitalize() for x in split(s))
...     if not result:
...         raise ValueError('Invalid ID (empty after edits)')
...     return result
... 
>>> fix_id("Test with-name and_underscore")
'TestWithNameAndUnderscore'
>>> fix_id("123 Test 456 with-name and_underscore 789")
'Test456WithNameAndUnderscore789'
>>> fix_id("Thisshouldbeunmolested")
'Thisshouldbeunmolested'
>>> fix_id('123')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 4, in fix_id
ValueError: Invalid ID (empty after edits)

이들 중 어느 것도 식별자의 고유성을 보장하지 않습니다. 예를 들어 "Mary-Sue"및 "mary sue"는 동일한 식별자에 매핑됩니다. 다른 식별자에 매핑하는 데 필요한 경우 기호를 매핑하고 필요한 경우 접미사를 추가하는 캐시 사전을 추가 할 수 있습니다.

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

특수 문자가 포함 된 문자열을 string 형 배열로 변환

분류에서Dev

문자열도 포함하는 열에서 숫자가 아닌 정수 변환

분류에서Dev

특수 문자에서 문자열 변환

분류에서Dev

(C 만) 문자열 char에서 16 진수로 특수 문자 변환

분류에서Dev

특수 ASCII 문자를 C ++에서 XML 호환 문자열로 변환

분류에서Dev

배치 변수에서 영숫자가 아닌 문자 제거

분류에서Dev

문자열에서 문자를 특수 문자로 교체

분류에서Dev

문자열을 특별한 종류의 변수로 변환

분류에서Dev

문자열에서 특정 영숫자가 아닌 문자 제거

분류에서Dev

Python 특수 문자를 무시하고 문자열을 목록으로 변환

분류에서Dev

특수 문자를 사용하여 문자열을 유니 코드로 변환

분류에서Dev

영숫자가 아닌 순서로 문자열 변수 인코딩

분류에서Dev

특수 문자열을 json obj로 변환

분류에서Dev

SQL 서버에서 특수 문자 이름을 가진 XML로 변환

분류에서Dev

문자열에서 특수 문자를 찾아 C #의 정규식을 사용하여 변경

분류에서Dev

관찰 가능한 값을 문자열이 아닌 변수로 평가

분류에서Dev

인자가 아닌 문자로 문자열을 사용하는 R 변환 열

분류에서Dev

문자열에서 문자로 변환 할 수 없습니다.

분류에서Dev

문자열에서 문자로 변환 할 수 없습니다.

분류에서Dev

자바에서 문자열을 함수로 변환

분류에서Dev

문자열을 모든 대문자로 변환하고 함수에서 반환

분류에서Dev

Java 일반 바이트 배열을 문자열로 변환 (16 진수가 아닌 10 진수)

분류에서Dev

16 진수 문자열을 C #에서 일반 문자열로 변환

분류에서Dev

문자열을 ... Swift에서 문자열로 변환 할 수 없습니다.

분류에서Dev

특정 변수 문자가있는 문자열 조합

분류에서Dev

숫자가 아닌 문자열 부분을 double로 변환

분류에서Dev

python 문자열은 영어가 아닌 알파벳을 유지하는 특수 문자 만 대체합니다.

분류에서Dev

숫자 문자열을 숫자와 문자의 문자열로 변환 할 수있는 문자열 메서드가 있습니까?

분류에서Dev

문자열에서 시작 문자 및 특수 문자 찾기

Related 관련 기사

  1. 1

    특수 문자가 포함 된 문자열을 string 형 배열로 변환

  2. 2

    문자열도 포함하는 열에서 숫자가 아닌 정수 변환

  3. 3

    특수 문자에서 문자열 변환

  4. 4

    (C 만) 문자열 char에서 16 진수로 특수 문자 변환

  5. 5

    특수 ASCII 문자를 C ++에서 XML 호환 문자열로 변환

  6. 6

    배치 변수에서 영숫자가 아닌 문자 제거

  7. 7

    문자열에서 문자를 특수 문자로 교체

  8. 8

    문자열을 특별한 종류의 변수로 변환

  9. 9

    문자열에서 특정 영숫자가 아닌 문자 제거

  10. 10

    Python 특수 문자를 무시하고 문자열을 목록으로 변환

  11. 11

    특수 문자를 사용하여 문자열을 유니 코드로 변환

  12. 12

    영숫자가 아닌 순서로 문자열 변수 인코딩

  13. 13

    특수 문자열을 json obj로 변환

  14. 14

    SQL 서버에서 특수 문자 이름을 가진 XML로 변환

  15. 15

    문자열에서 특수 문자를 찾아 C #의 정규식을 사용하여 변경

  16. 16

    관찰 가능한 값을 문자열이 아닌 변수로 평가

  17. 17

    인자가 아닌 문자로 문자열을 사용하는 R 변환 열

  18. 18

    문자열에서 문자로 변환 할 수 없습니다.

  19. 19

    문자열에서 문자로 변환 할 수 없습니다.

  20. 20

    자바에서 문자열을 함수로 변환

  21. 21

    문자열을 모든 대문자로 변환하고 함수에서 반환

  22. 22

    Java 일반 바이트 배열을 문자열로 변환 (16 진수가 아닌 10 진수)

  23. 23

    16 진수 문자열을 C #에서 일반 문자열로 변환

  24. 24

    문자열을 ... Swift에서 문자열로 변환 할 수 없습니다.

  25. 25

    특정 변수 문자가있는 문자열 조합

  26. 26

    숫자가 아닌 문자열 부분을 double로 변환

  27. 27

    python 문자열은 영어가 아닌 알파벳을 유지하는 특수 문자 만 대체합니다.

  28. 28

    숫자 문자열을 숫자와 문자의 문자열로 변환 할 수있는 문자열 메서드가 있습니까?

  29. 29

    문자열에서 시작 문자 및 특수 문자 찾기

뜨겁다태그

보관