Skip to content

Instantly share code, notes, and snippets.

@am0c
Created March 31, 2011 08:20
Show Gist options
  • Select an option

  • Save am0c/896020 to your computer and use it in GitHub Desktop.

Select an option

Save am0c/896020 to your computer and use it in GitHub Desktop.
kldp #122160 연속되는 글자 찾기
#!/usr/bin/env perl
#
# 질문에 대한 정확한 답변을 위한 코드가 아님
#
use 5.010;
use warnings;
use strict;
use Data::Iter qw(:all);
my $s = '---- -- ----- ------- ---';
say "ok ($&)" if $s =~ m{\B(-+) (??{ "-" x (10 - length $1) })};
for my $i (iter [split ' ', $s]) {
last unless defined $i->getnext;
my $part = $i->value . ' '. $i->getnext->value;
say "ok ($part)" if length $part >= 10;
}
__END__
http://kldp.org/node/122160
안녕하십니까!! perl 정규표현식에 대해서 질문이 있어서 이렇게 질문 올려봅니다.
다름이 아니고 지금 제가 일정 길이 이상되는 글자를 찾는 중인데요...
글자라기보다는 - <==이 문자라고 하겠습니다.
10개 이상 연속으로 일치하는가에 대해서 찾고싶다고 하면
$find=~/(-)\1{10,}/ig
이런식으로 찾는데 이때는
---------- ---- -- - - - -----------
위와 같은 문장에서는 2개가 일치를 하겠죠?
그런데 만약에 ------- ------ <이러한 (중간에 한칸이 공백이지만 공백을 뺀 나머지가 길이가 10이상일때)
글자도 인식을 했으면 좋겠는데 어떤 방식을 써야할지 궁금합니다...
답변 부탁드리겟습니다 ( _ _*
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment