php 정규식으로 문자+숫자조합 변경 문의드립니다

php 정규식으로 문자+숫자조합 변경 문의드립니다

QA

php 정규식으로 문자+숫자조합 변경 문의드립니다

본문

$a=barcodesdgnsdgsadg454322  ==> $a=barcodesdgnsdgsadg|454322 
이렇게 바꾸고싶습니다 


현재 앞에 문자 그리고 뒤에 숫자 이런식 되있는데 
정해진건 앞에는 문자 뒤에는 숫자인데 

문자 나 숫자 자릿수는 정해진게없고 랜덤이고요 


보기좋게  하기위해 
문자 끝 숫자시작 앞에 | 를 넣고싶은데 

정규식으로 한다면 어떻게하면될까요? 
정규식으로하는방법 알려주심 감사할게요 


$a=barcodesdgnsdgsadg454322  ==> $a=barcodesdgnsdgsadg|454322 
이렇게 바꾸고싶습니다 

추가로 mysql 정규식 적용은 어떻게변경하면되는지 아신다면 좀 알려주심 감사할게요^^

이 질문에 댓글 쓰기 :

답변 2


$a = "barcodesdgnsdgsadg454322";
$pattern = "/([a-zA-Z]+)([0-9]+)?/";
preg_match($pattern, $a, $match);
//print_r($match);
$b = $match[1]."|".$match[2];

echo $a."\n<br>";
echo $b."\n<br>";

 

 

mysql에서 위의 작업은 일반적으로 어려운 작업입니다.

mysql 8.0 에서 REGEX_REPLACE함수가 추가되었음으로 이를 사용하여 변환할수 있습니다.(마리아db는 10.x 버전에 이미 지원되고 있을수 있습니다.)

 

 


<?php
$a="barcodesdgnsdgsadg454322";
$pattern = "#([a-zA-Z]+)(\d+)#";
if(preg_match($pattern, $a)) {
    $a = preg_replace($pattern, '${1}|$2', $a);
}
echo $a;
?>

평정심 답변도움 주셔 감사해요 평정심님 답변도 제가 해드려야하는데 체택이 이젠 1분밖에 안되서 좀 미안합니다 ^^;; 답변체택은 먼저  명량폐인님께서 답변을해주셔서 아무래도 먼저 답변해주신분께 체택드려야함을 많은 이해 양해구할게요 도움 다시한번 감사드리고요 편안한 밤되세요^^;; 감사합니다

답변을 작성하시기 전에 로그인 해주세요.
전체 123,528 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT