Code Duplication    Length = 48-49 lines in 2 locations

Michelf/Markdown.php 1 location

@@ 800-847 (lines=48) @@
797
	 * @param  string $text
798
	 * @return string
799
	 */
800
	protected function doImages($text) {
801
		// First, handle reference-style labeled images: ![alt text][id]
802
		$text = preg_replace_callback('{
803
			(				# wrap whole match in $1
804
			  !\[
805
				('.$this->nested_brackets_re.')		# alt text = $2
806
			  \]
807
808
			  [ ]?				# one optional space
809
			  (?:\n[ ]*)?		# one optional newline followed by spaces
810
811
			  \[
812
				(.*?)		# id = $3
813
			  \]
814
815
			)
816
			}xs',
817
			array($this, '_doImages_reference_callback'), $text);
818
819
		// Next, handle inline images:  ![alt text](url "optional title")
820
		// Don't forget: encode * and _
821
		$text = preg_replace_callback('{
822
			(				# wrap whole match in $1
823
			  !\[
824
				('.$this->nested_brackets_re.')		# alt text = $2
825
			  \]
826
			  \s?			# One optional whitespace character
827
			  \(			# literal paren
828
				[ \n]*
829
				(?:
830
					<(\S*)>	# src url = $3
831
				|
832
					('.$this->nested_url_parenthesis_re.')	# src url = $4
833
				)
834
				[ \n]*
835
				(			# $5
836
				  ([\'"])	# quote char = $6
837
				  (.*?)		# title = $7
838
				  \6		# matching quote
839
				  [ \n]*
840
				)?			# title is optional
841
			  \)
842
			)
843
			}xs',
844
			array($this, '_doImages_inline_callback'), $text);
845
846
		return $text;
847
	}
848
849
	/**
850
	 * Callback to parse references image tags

Michelf/MarkdownExtra.php 1 location

@@ 965-1013 (lines=49) @@
962
	 * @param  string $text
963
	 * @return string
964
	 */
965
	protected function doImages($text) {
966
		// First, handle reference-style labeled images: ![alt text][id]
967
		$text = preg_replace_callback('{
968
			(				# wrap whole match in $1
969
			  !\[
970
				(' . $this->nested_brackets_re . ')		# alt text = $2
971
			  \]
972
973
			  [ ]?				# one optional space
974
			  (?:\n[ ]*)?		# one optional newline followed by spaces
975
976
			  \[
977
				(.*?)		# id = $3
978
			  \]
979
980
			)
981
			}xs',
982
			array($this, '_doImages_reference_callback'), $text);
983
984
		// Next, handle inline images:  ![alt text](url "optional title")
985
		// Don't forget: encode * and _
986
		$text = preg_replace_callback('{
987
			(				# wrap whole match in $1
988
			  !\[
989
				(' . $this->nested_brackets_re . ')		# alt text = $2
990
			  \]
991
			  \s?			# One optional whitespace character
992
			  \(			# literal paren
993
				[ \n]*
994
				(?:
995
					<(\S*)>	# src url = $3
996
				|
997
					(' . $this->nested_url_parenthesis_re . ')	# src url = $4
998
				)
999
				[ \n]*
1000
				(			# $5
1001
				  ([\'"])	# quote char = $6
1002
				  (.*?)		# title = $7
1003
				  \6		# matching quote
1004
				  [ \n]*
1005
				)?			# title is optional
1006
			  \)
1007
			  (?:[ ]? ' . $this->id_class_attr_catch_re . ' )?	 # $8 = id/class attributes
1008
			)
1009
			}xs',
1010
			array($this, '_doImages_inline_callback'), $text);
1011
1012
		return $text;
1013
	}
1014
1015
	/**
1016
	 * Callback for referenced images