Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- '/<span lang="hu" class="multilang">Hungarian Level 1</span><span lang="en" class="multilang">English Level ONE</span>/<span lang="hu" class="multilang">Hungarian Level 2</span><span lang="en" class="multilang">English Level TWO</span>/Last level'
- SET @xml = '/<span lang="hu" class="multilang">Hungarian Level 1</span><span lang="en" class="multilang">English Level ONE</span>/<span lang="hu" class="multilang">Hungarian Level 2</span><span lang="en" class="multilang">English Level TWO</span>/Last level';
- SET @result1 = ExtractValue(@xml, '//span[1]');
- SET @result2 = ExtractValue(@xml, '/span[2]');
- SELECT @result1;
- SELECT @result2;
- CREATE DEFINER=`root`@`%` FUNCTION `decode_path`(
- `path_input` MEDIUMTEXT
- ,
- `lang` VARCHAR(50)
- )
- RETURNS mediumtext CHARSET utf8
- LANGUAGE SQL
- NOT DETERMINISTIC
- CONTAINS SQL
- SQL SECURITY DEFINER
- COMMENT ''
- BEGIN
- DECLARE cnt INT UNSIGNED DEFAULT 2;
- DECLARE cat_id INT UNSIGNED;
- DECLARE cat_name VARCHAR(200) DEFAULT '';
- DECLARE decoded_path MEDIUMTEXT;
- SET decoded_path = '';
- WHILE cnt < LENGTH(path_input) - LENGTH(REPLACE(path_input, '/', '')) + 2 DO
- SET cat_id = SUBSTRING_INDEX(SUBSTRING_INDEX(path_input,'/',cnt), '/', -1);
- SELECT `name` INTO cat_name FROM mdl_course_categories as c WHERE id = cat_id;
- SET decoded_path := CONCAT(decoded_path, '/', cat_name);
- SET cnt := cnt + 1;
- END WHILE;
- SET @path := decoded_path;
- IF(lang REGEXP 'hu%' ) THEN
- -- SET decoded_path := REPLACE(decoded_path,'<span lang="en" class="multilang">','');
- SET @result := ExtractValue(@path, '/span[1]');
- ELSEIF (lang REGEXP 'en%' ) THEN
- -- SET decoded_path := REPLACE(decoded_path,'<span lang="hu" class="multilang">','');
- SET @result := ExtractValue(@path, '/span[2]');
- END IF;
- RETURN @result;
- END
Add Comment
Please, Sign In to add comment