문자열 비교시...
글쓴이: tkfkdgody / 작성시간: 화, 2008/05/27 - 7:43오후
안녕하세요..
문자열을 비교하다가 뒤에 나오는 공백문자때문에 비교를 할 수 없어서 글 올립니다.
디비에서 하나의 열을 받아오는데요
디비에 저장된값은 "abc"라는 값인데 디비에 char(20)으로 잡혀있어서 그 뒤의 글자는 공백문자가 오네요
이렇게 리턴됩니다. >>> "abc "
공백문자가 없어야 제가 원하는 문자열과 비교하는데...
공백문자를 없애기 위해서 생각한건 배열하나하나 아스키코드값으로 비교해서
그 공백문자가 2개연속해서 나오면 그 전 문자열만 메모리카피하는건데.. 너무 조잡해보이네요..
혹시 공백문자를 제거하는 함수가 있을까요? 아니면 디비에서 리턴 받을 때 PQgetvalue로 받는데요
공백문자를 제거할 수 있는 방법이 있을까요? 그도 아니면 다른 방법이?
조언 부탁드리겠습니다..
Forums:
DB에 공백이 하나 더
DB에 공백이 하나 더 들어가서 저장된 것인지? 아니면 DB상에는 공백이 없는데 받아올 때 공백이 하나 더 들어가는지 먼저 확인을 하심이...
http://sebul.sarang.net/
세벌 https://sebuls.blogspot.kr/
abc 받고
abc 받고 싶은데
자료형이 20개짜리라서 20개 'abc '이렇게 온다는 말 같군요..
흠....
연속된 문자열만 받는 거라면
공백문자 검색을 넣는것도 좋겠군요.
잘 모르지만 yacc, lex <== 이런것도 space padding 관련해서 사용한다더군요,,
laziness, impatience, hubris
不恥下問 - 진정으로 대화를 원하면 겸손하게 모르는 것은 모른다고 말하는 용기가 필요하다.
laziness, impatience, hubris
不恥下問 - 진정으로 대화를 원하면 겸손하게 모르는 것은 모른다고 말하는 용기가 필요하다.
char 컬럼이라면 사이즈가 고정되어 있으니
뒤에서부터 읽어서 처음으로 나오는 공백 아닌 문자까지만 취급하면 되겠군요
아니면, 비교를 원하는 문자열의 길이를 알고 계실테니,
strncmp 를 사용하셔도 간단하겠네요.
http://www.postgresql.org/doc
http://www.postgresql.org/docs/7.1/static/functions-string.html
query에 trim을 써도 그렇게 들어오나요?
답변 및 좋은 방향
답변 및 좋은 방향 제시 해주셔서 감사합니다..
일단 간단한 방식으로; 해결했습니다..
다시 한번 감사드립니다..
댓글 달기